Go to:  Davar site entry | Site contents | Site index | Mainframe | JCL | Text bottom

SORTSEQ  Cataloged  Procedure

        

SORTSEQ cataloged procedure creates and catalogs an empty disk data set using MVS Job Scheduler (IEFBR14 is a "do-nothing" dummy system program).  If the data set with the same name already exists, it gets deleted by DELTDS step prior to the creation step.

Warning!  SORTSEQ procedure is potentially destructive (because of the DELTDS usage) and should be used with a caution and only after safe experimenting as it is described below.  If you don't have clear understanding what to expect from SORTSEQ, i.e.  if you are not sure how data set deletion works under MVS, please do not use SORTSEQ procedure at all.

Following are parameters of the SORTSEQ cataloged procedure:

//SORTSEQ PROC RI=, - Input name prefix // RO=, - Output name prefix // R=, - In/Out name prefix (req, or RI and RO) // SI=, - Input data set name // SO=, - Output data set name // S=, - In/Out data set name (req, or SI and SO) // X=, - Output name postfix (opt, strt with '.') // U=3, - Number of units for output data set // V=, - Volume for output data set (for SMS) // C=CYL, - Space allocation units (CYL/TRK/) // P=10, - Primary space 4 output data set (&Cs) // A=6, - Additional space 4 output data set (&Cs) // GC=PGMR, - Control library group // LC=CONTROL, - Control library name // PC=DELTOFF, - Partition with control operators // DL=DBL - Duplicate deletion specification: //* DBL - Delete records duplicates //* OFF - Bypass duplicates deletion
 Parameter  Default  Description
 R  ?

Input name prefix.  unpredictable and disk space is limited, use more than '1' to avoid annoying B37 AbEnds — insufficient disk space for secondary extent allocations.

 U  1

Number of disk units.  When data set size is unpredictable and disk space is limited, use more than '1' to avoid annoying B37 AbEnds — insufficient disk space for secondary extent allocations.




     //******* Sort Seq Data Set (Replace Existing) -- 05/03/1988–12/15/1998
     //*       Copyright (C) 1988–1998 by Vladimir Veytsel     www.davar.net
     //*
     //SORTSEQ PROC RI=,         - Input  name prefix   (req, or R)
     //             RO=,         - Output name prefix   (req, or R)
     //             R=,          - In/Out name prefix   (req, or RI and RO)
     //             SI=,         - Input  data set name (req, or S)
     //             SO=,         - Output data set name (req, or S)
     //             S=,          - In/Out data set name (req, or SI and SO)
     //             X=,          - Output name postfix  (opt, strt with '.')
     //             U=3,         - Number of units disk for output data set
     //             V=,          - Volume for output data set
     //             M=CYL,       - Memory allocation units (CYL/TRK/)
     //             P=10,        - Number of primary    memory units
     //             A=6,         - Number of additional memory units
     //             GC=PGMR,     - Control library group
     //             LC=CONTROL,  - Control library name
     //             PC=DELTOFF,  - Partition with control operators
     //             DL=DBL       - Duplicate deletion specification:
     //*                           DBL  - Delete record duplicates
     //*                           OFF  - Bypass duplicates deletion
     //*
     //DELTDS  EXEC DELTDS,S=&RO&R..&SO&S&X
     //*
     //SORT    EXEC PGM=SORT
     //SYSIN    DD  DSN=&SYSUID..&GC..&LC.(&PC),DISP=SHR
     //         DD  DSN=&SYSUID..&GC..&LC.(DELT&DL),DISP=SHR
     //SORTIN   DD  DSN=&RI&R..&SI&S,DISP=SHR
     //WRK INCLUDE  MEMBER=SORTWRK
     //SORTOUT  DD  DSN=&RO&R..&SO&S&X,
     //             UNIT=(SYSALLDA,&U),VOL=SER=&V,
     //             SPACE=(&C,(&P,&A),RLSE),DISP=(,CATLG)
     //SYSOUT   DD  SYSOUT=*,SPACE=(TRK,(1,1))
  


To test the SORTSEQ procedure create library &SYSUID..TEST.JOB
by executing the job similar to the following
(JCLLIB operator points to private procedure library):




   //DEVUVOVT JOB CLASS=T,MSGCLASS=H,NOTIFY=&SYSUID TYPRUN=SCAN
   //PROC  JCLLIB ORDER=&SYSUID..PGMR.PROC
   //TEST    EXEC SORTSEQ,S=DEVUVOV.TEST.JOB,D=10,O=PO
            

To check creation results use 3.4 or 3.2 to make sure the library got created
and SPACE and DCB values are correct.




                                Data Set Information
   Command ===> ______________________________________________________________

   Data Set Name .  .  .  .  :  DEVVLAD.TEST.JOB

   General Data                          Current Allocation
    Management class .  .  :  P180Y735       Allocated tracks  .  :  10
    Storage class  .  .  .  :  STD            Allocated extents .  :  1
     Volume serial .  .  .  :  TST007         Maximum dir.  blocks :  10
     Device type .  .  .  .  :  3390
    Data class .  .  .  .  .  :  PDS
     Organization  .  .  .  :  PO            Current Utilization
     Record format .  .  .  :  FB             Used tracks .  .  .  .  :  1
     Record length .  .  .  :  80             Used extents  .  .  .  :  1
     Block size  .  .  .  .  :  27920          Used dir.  blocks  .  :  1
     1st extent tracks .  :  10             Number of members .  :  0
     Secondary tracks  .  :  6
     Data set name type  :  PDS

     Creation date .  .  .  :  1998/10/17     Referenced date .  .  :  1998/10/17
     Expiration date .  .  :  ***None***
            

Library creation should also be confirmed by messages
in the JESYSMSG output DD of SDSF (IOF, JES Master, etc.):




   IGD101I SMS ALLOCATED TO DDNAME (SYSUT   )
           DSN (DEVVLAD.TEST.JOB                            )
           STORCLAS (STD) MGMTCLAS (P180Y735) DATACLAS (PDS)
           VOL SER NOS= TST007
   IEF142I DEVVLADT IEFBR14 TEST - STEP WAS EXECUTED - COND CODE 0000
   IGD104I DEVVLAD.TEST.JOB                             RETAINED,  DDNAME=SYSUT
            


View [and save] SORTSEQ.PRC text   (Use [Back] button or [Alt]+[CL] to return here)
Go to:  Davar site entry | Site contents | Site index | Mainframe | JCL | Text top