SORT cataloged procedure
You can use the supplied SORT cataloged procedure when you include user routines that require binding or link-editing. Using this procedure without using bound or link-edited user routines is inefficient because the SORT cataloged procedure allocates linkage editor data sets whether or not you include user routines.
When you specify EXEC PROC=SORT or EXEC SORT, the following JCL statements are generated:
//SORT EXEC PGM=ICEMAN 00
//STEPLIB DD DSNAME=yyy,DISP=SHR 10
//SORTLIB DD DSNAME=xxx,DISP=SHR 20
//SYSOUT DD SYSOUT=A 30
//SYSPRINT DD DUMMY 40
//SYSLMOD DD DSNAME=&GOSET,UNIT=SYSDA,SPACE=(3600,(20,20,1)) 50
//SYSLIN DD DSNAME=&LOADSET,UNIT=SYSDA,SPACE=(80,(10,10)) 60
//SYSUT1 DD DSNAME=&SYSUT1,SPACE=(1024,(60,20)), 70
// UNIT=(SYSDA,SEP=(SORTLIB,SYSLMOD,SYSLIN)) 80
- Line
- Explanation
- 00
- The stepname of the procedure is SORT. This EXEC statement initiates the program, which is named ICEMAN.
- 10
- The STEPLIB DD statement defines the data set containing the DFSORT program modules. If DFSORT was installed as part of the normal system link libraries, the STEPLIB DD statement is unnecessary. It is needed only if DFSORT resides in a separate link library which is not part of the "link list." (Your installation's system programmers can give you this information.) The STEPLIB DD statement shown assumes that the data set name represented by yyy is cataloged.
- 20
- The SORTLIB DD statement defines a private data set containing
the modules needed for a sort using tape work files or a merge using
the Conventional technique. The data set is cataloged, and the data
set name represented by xxx was specified at installation time; it
can be SYS1.SORTLIB.
If the modules were installed in a system library and installation option SORTLIB=SYSTEM is used, the SORTLIB DD statement is unnecessary and is ignored unless dynamic link of user exits is used.
- 30
- Defines an output data set for system use (messages). It is directed to system output class A.
- 40
- Defines SYSPRINT as a dummy data set because linkage editor diagnostic output is not required.
- 50
- Defines a data set for linkage editor output. Any system disk device is acceptable for the output. Space for 20 records with an average length of 3600 bytes is requested; this is the primary allocation. Space for 20 more records is requested if the primary space allocation is not sufficient; this is the secondary allocation, which is requested each time primary space is exhausted. The last value is space for a directory, which is required because SYSLMOD is a new partitioned data set.
- 60
- The SYSLIN data set is used by the program for linkage editor control statements. It is created on any system disk device, and it has space for 10 records with an average length of 80 bytes. If the primary space allocation is exhausted, additional space is requested in blocks large enough to contain 10 records. No directory space is necessary.
- 70/80
- The SYSUT1 DD statement defines a work data set for the linkage editor.