SYNCSORT - AN OVERVIEW

Table of Contents

1. OverView ...................................................................................................... 1 2. SYNCSORT Commands ............................................................................... 2 2.1 SORT......................................................................................................... 2 2.2 MERGE ..................................................................................................... 2 2.3 INCLUDE and OMIT................................................................................ 2 2.4 INREC and OUTREC ............................................................................... 3 2.5 SUM .......................................................................................................... 3 2.6 ALTERNATE COLLATING SEQUENCE .............................................. 4 2.7 OPTION Statement ................................................................................... 4 2.7.1 EQUALS AND NOEQUALS ............................................................. 4 2.7.2 RECORD............................................................................................. 4 2.7.3 SKIPREC............................................................................................. 4 2.7.4 STOPAFT............................................................................................ 4 2.7.5 COPY .................................................................................................. 5 2.8 OUTFIL..................................................................................................... 5 3. JCL Requirement........................................................................................... 5 SYSIN . ...................................................................................................... 5 SYSOUT ..................................................................................................... 5 SORTIN ...................................................................................................... 5 SORTIN## .................................................................................................. 5 SORTOUT .................................................................................................. 5 SORTOUT# ................................................................................................ 5 SORTOT## ................................................................................................. 5 SORTWK##................................................................................................ 5 4. PROCESSING ORDER ................................................................................ 5
1. OVERVIEW
Syncsort belongs to Syncsort IncC that can sort data, merge data, selectively process data, reformat data, create summary records from data and create extensive reports from input data. It can also perform any combination of the above mentioned functions and more. This document tries to explain in brief the various items related to processing data using Syncsort. This document describes a subset of the Syncsort functions and does not claim to be a replacement nor does the author guarantee the exactness of details or syntax.
Syncsort.doc Page 1 of 6

2.{fieldtype} Please refer to SORT statement above for description of the statement.{length}.. The format of the MERGE statement is as follows. The frequently used ones are CH for character. MERGE FIELDS=({begcol}. LT. The length of the field must be specified in bytes. The SORT statement requires the sort sequence for the data.{begcol}.{length}. MERGE The MERGE statement can be used merge two or more pre-sorted datasets.{fieldtype}.3 INCLUDE AND OMIT The INCLUDE statement can be used to specify the conditions for inclusion of records from the input during processing.{length2}.{fldtype1}. 2.) or SORT FIELDS=({begcol}..{length}.{fieldtype} The beginning column is specified in bytes. {begcol2}.). The list of fields and their formats must be specified for this statement. PD for packed decimal (COMP-3 fields of COBOL). The second form of the SORT statement can be used when all the fields specified for the sort sequence are of the same type.{D|A}].oper}. irrespective of the field type.{fieldtype}..2 2.{begcol}.{length}..{D|A}[. then the options specified will determine if the input order is maintained for such records.{comp. GT. {length}.SYNCSORT . ZD for zone decimal and AQ for alternate collating sequence (refer to later section on alternate collating sequence). The valid comparison operators are EQ..{D|A}]. {D|A}]. The list of fields and their formats must be specified for this statement.{D|A}[. {D|A}].{length}. INCLUDE COND=({begcol1}.{fldtype2}) The above statement can be used to compare two fields within the same record. SORT FIELDS=({begcol}.{fieldtype}. The OMIT statement can be used to specify the conditions for exclusion of records from the input during processing..{begcol}.{length1}. The output records are sorted in the specified sequence. Syncsort. NE. There are many field types. The format of the SORT statement is as follows.. The MERGE statement requires the sort sequence for the data..AN OVERVIEW 2.{D|A}[. starting with 1 for the first byte.1 SYNCSORT COMMANDS SORT The SORT statement can be used sort a dataset or concatenated datasets. Both statements cannot be used together. The different formats of the INCLUDE and OMIT statements are shown below.doc Page 2 of 6 .) or MERGE FIELDS=({begcol}.{length}.{D|A}[. The multiple records contain the same sort sequence key. BI for binary (COMP fields of COBOL).{fieldtype}.). {length}.{begcol}. LE and GE.

using SIGNS parameter. I is equivalent of Z PIC clause of COBOL and T is equivalent of 9 PIC clause. MERGE and SUM statements must reflect the output from the INREC processing.EDIT=SIII. Using the convention that {cond.{length}]. 2.{length}.{cond. The SYNCSORT software does not guarantee unique records if numeric fields are required to be summed up. This specifies the position in the output record where the field must be placed.{length}. Constant fields can also be introduced in the record. more than one record may be created.5 Syncsort... SUM FIELDS=NONE or Page 3 of 6 2. The format for the INREC and OUTREC statements are similar. An example syntax is given below. spaces or zeroes can be placed in the record at specific positions.{fldtype}. INREC FIELDS=({begcol}. compound statements can be constructed as follows. placing the first field specified at column 1.SYNCSORT .oper}.[{OR|AND}. The syntax is as follows. One record will be produced for each unique key present in the input. The default is to place it at the current position in the output record.{comp. those fields will be summed up. For OMIT statements replace the INCLUDE verb by OMIT verb in the above examples. If numeric fields are specified for summation.) The Outpos description is optional..EDIT=M#) or INREC FIELDS=({begcol}.stmt} is the part of statement between the parenthesis in either of the statements mentioned above.[{outpos}:]{begcol}.IIT. The individual numeric fields can also be reformatted from any form to zone decimal.AN OVERVIEW INCLUDE COND=({begcol}.) Parenthesis can be used to group conditional statements to form complex conditions. {constant}) The above statement can be used to compare a field in the record with a character. Whenever there is an overflow of a numeric field.{fldtype}. decimal or hexadecimal constant.stmt}. The OUTREC statement can be specified to reformat the processed records into the required layout for the output records or the report that is generated. Conventions for the sign displayed for numeric fields can be specified after the edit parameter.{length} [. NOTE: When using INREC fields.stmt}]. SUM The SUM statement can be used to summarize data based on the SORT statement..doc . For example. INREC FIELDS=([{outpos}:]{begcol}. the S character is for sign field.TT) Default picture clauses are provided and named M0 to M9. INCLUDE COND=({cond.{fldtype}. In the example above.{length}. the column positions and lengths in the SORT.4 INREC AND OUTREC The INREC statement can be specified to reformat the input records before SYNCSORT processes them for SORT or MERGE. Customized picture clauses can be specified by using appropriate syntax.

OPTION EQUALS should be used if the order of input data must be maintained during the SORT processing. SKIPREC The SKIPREC parameter of the OPTION statement can be used to specify the number of records of input to skip before any processing should begin. STOPAFT=100 specifies that SYNCSORT stop taken any more input after 100 records that match the criteria are selected.) The new hex code will be used for the sorting or merging process only for the appropriate hex code specified for it.7. that the user intends to sort on.{begcol}. This parameter will affect the non-summation data in SUM processing..4 Syncsort.{length}.. When NOEQUALS is specified the data for the non keyfields are unpredictable.SYNCSORT . This will help the user in sorting records in a different sequence than the EBCDIC character set. {fldtype}]. The second format is used when numeric summation is required when duplicate records exist.3 2.2 2.7 2. RECORD The record option of the OPTION statement can be used to specify if the input data to be processed are Variable length records or Fixed length records. This is required when both the input and output from the SORT or MERGE processing are VSAM files.doc Page 4 of 6 . The valid values are RECORD=V and RECORD=F.7.7.. ALTSEQ CODE=({hexcode}{newhexcode}[.{hexcode}{newhexcode}]. This may be required in situations where the character codes for fields.) The first format is used when duplicate records need to be removed and no numeric summation is required. 2. SKIPREC=20 specifies that the first 20 records of the input must be skipped.1 2. MERGE and SUM processing.{fldtype}[.. OPTION STATEMENT The option statement can be used to control parameters during SORT.{length}.7.6 ALTERNATE COLLATING SEQUENCE The alternate collating sequence can be specified using the ALTSEQ statement. 2. are not in EBCDIC collating sequence. The new hex code will not replace the hex codes in the output or the reports. EQUALS AND NOEQUALS The default of NOEQUALS specifies that SYNCSORT need not retain the order of input data when duplicate record keys are found.AN OVERVIEW SUM FIELDS=({begcol}. STOPAFT The STOPAFT parameter of the OPTION statement can be used to specify the number of records to be included for processing. When EQUALS is used the data for the non key fields are taken from the first input record for that key value.

1. this statement can help create separate reports for each department into a different dataset or sysout and route them to the appropriate destination. Each output dataset can have its own INCLUDE or OMIT condition and its own INREC and OUTREC parameters. Section processing and Section breaks. a reformatted output can be produced. OUTFIL The OUTFIL statement can be used to produce multiple output datasets. like producing reports. One OUTFIL statement is required for each output dataset. SORTIN This dataset should point to the input dataset(s) for the sort process. SORTOUT This dataset should point to the dataset where the output must be placed.SYNCSORT . summation.1 SYSIN It should point to the SYNCSORT control statements mentioned above. 4. PROCESSING ORDER The processing order of the control statements by SYNCSORT is as follows. There must be a one to one correspondence between the FILES parameter in the OUTFIL statement and the list of DD statements specified. SORTWK## These statements should refer to temporary volumes with appropriate space parameters depending on the volume of data to be processed. SORTOT## The same as SORTOUT#. This statement must be used if elaborate formatting is required. Syncsort. JCL REQUIREMENTS The different DD statements required for the SORT step are as follows. 2. SORTOUT# These datasets should point to the individual output datasets referred in the OUTFIL statements. selected records can be copied to output based on specific conditions in field values.5 COPY The COPY parameter can be used if a simple COPY operation is required. 3.doc Page 5 of 6 . If neither SORT processing nor MERGE processing is required this is ideal to use. report formatting is available.7. The FILE parameter specifies the DD name suffix to be used for the dataset output. This is where the SYNCSORT messages are placed. including 3 levels of HEADER#. When COPY is combined with INREC or OUTREC processing (INREC is more efficient in this case). The parameter when combined with SKIPREC and STOPAFT helps copy selected records to output based on number of records.AN OVERVIEW 2. Further. 3 levels of TRAILER#.8 3. These individual datasets are required to be in pre-sorted order. SORTIN## These statements should refer to the individual datasets to be merged. For example.1. SYSOUT It should point to a dataset or SYSOUT. If COPY is combined with INCLUDE or OMIT condition statements. The SYNCSORT manual should be referred if the OUTFIL statement is required.

SUM statement processing. 2.SYNCSORT . MERGE or COPY processing (including alternate collating sequence processing for SORT and MERGE). 5. The processing order will drastically change if OUTFIL statement is present in the SYSIN of SYNCSORT. INREC statement processing. SORT. Syncsort. 1. OUTREC processing. 3.AN OVERVIEW INCLUDE or OMIT condition statement processing. The processing is very complex if the OUTFIL statements use different INREC statements and different INCLUDE or OMIT statements. 4.doc Page 6 of 6 .

Sign up to vote on this title
UsefulNot useful