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.