Version 7.4.4
 —  Utilities  —

JCL/JCS Requirements and Examples

This section describes the job control information required to run ADALOD with BS2000, OS/390 or z/OS, VM/ESA or z/VM, and VSE/ESA systems and shows examples of each of the job streams.

Note:
When running with the optional Recovery Aid (RLOG), all temporary datasets must also be cataloged in the job control.

This document covers the following topics:


Collation with User Exit

If a collation user exit is to be used during ADALOD execution, the ADARUN CDXnn parameter must be specified for the utility run.

Used in conjunction with the universal encoding support (UES), the format of the collation descriptor user exit parameter is

graphics/util_adarun_cdxnn.png

where

nn is the number of the collation descriptor exit, a two-digit decimal integer in the range 01-08 inclusive.
exit-name is the name of the user routine that gets control at the collation descriptor exit; the name can be up to 8 characters long.

Only one program may be specified for each collation descriptor exit. Up to 8 collation descriptor exits may be specified (in any order). See the Adabas DBA Reference documentation for more information.

Top of page

BS2000

Dataset Link Name Storage More Information
Associator DDASSORn disk  
Data Storage DDDATARn disk  
Work DDWORKR1
DDWORKR4
disk  
Temp area DDTEMPR1 disk  
Temp overflow
(optional)
DDFILEA disk/ tape Stores descriptor values if the temp dataset is too small
Sort area DDSORTR1 disk With large files, split the sort area across two volumes 1
Sort area DDSORTR2 disk
Recovery log (RLOG) DDRLOGR1 disk Required when using the recovery log option
Compressed data DDEBAND disk/ tape Output of ADACMP or ADAULD utility
ISNs to be deleted DDISN disk/ tape ISNs to be deleted 2
Deleted records DDOLD disk/ tape Deleted records, if any 3
ADARUN parameters SYSDTA/ DDCARD   Operations
ADALOD parameters SYSDTA/ DDKARTE    
ADARUN messages SYSOUT/ DDPRINT   ADALOD report, see also Messages and Codes
ADALOD messages SYSLST/ DDDRUCK   Messages and Codes

Notes:

  1. Performance can be improved when sorting large files if the sort dataset either occupies two volumes, or if two sort datasets are specified. Both datasets must be on the same device type (SORTDEV parameter), and each must be exactly half the size specified by the SORTSIZE parameter.
  2. Four bytes per ISN, REC-FORM=VB, BUFF-LEN as in sequential file description, REC-SIZE maximum equals BUFF-LEN - 4. (In ISP format, REC-FORM is RECFM; BUFF-LEN is BLKSIZE; and REC-SIZE is LRECL.)
  3. REC-FORM=VB, BUFF-LEN as in sequential file description, REC-SIZE maximum equals BUFF-LEN - 4. (In ISP format, REC-FORM is RECFM; BUFF-LEN is BLKSIZE; and REC-SIZE is LRECL.)

ADALOD JCL Example (BS2000)

Load File

In SDF Format:

/.ADALOD LOGON
/MODIFY-TEST-OPTIONS DUMP=YES
/REMARK *
/REMARK * A D A L O D LOAD FILE
/REMARK *
/ASS-SYSLST L.LOD.LOAD
/ASS-SYSDTA *SYSCMD
/SET-FILE-LINK DDLIB,ADAvrs.MOD
/SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
/SET-FILE-LINK DDDATAR1,ADAyyyyy.DATA,SHARE-UPD=YES
/SET-FILE-LINK DDWORKR1,ADAyyyyy.WORK,SHARE-UPD=YES
/SET-FILE-LINK DDTEMPR1,ADAyyyyy.TEMP
/SET-FILE-LINK DDSORTR1,ADAyyyyy.SORT
/START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
ADARUN PROG=ADALOD,DB=yyyyy,IDTNAME=ADABAS5B
ADALOD LOAD FILE=1
ADALOD NAME= TESTFILE-1 
ADALOD MAXISN=10000,DSSIZE=10
ADALOD TEMPSIZE=100,SORTSIZE=50
/LOGOFF SYS-OUTPUT=DEL

In ISP Format:

/.ADALOD LOGON
/OPTION MSG=FH,DUMP=YES
/REMARK *
/REMARK * A D A L O D LOAD FILE
/REMARK *
/SYSFILE SYSLST=L.LOD.LOAD
/FILE ADA.MOD,LINK=DDLIB
/FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
/FILE ADAyyyyy.DATA ,LINK=DDDATAR1,SHARUPD=YES
/FILE ADAyyyyy.WORK ,LINK=DDWORKR1,SHARUPD=YES
/FILE ADAyyyyy.TEMP ,LINK=DDTEMPR1
/FILE ADAyyyyy.SORT ,LINK=DDSORTR1
/FILE CMP.AUS,LINK=DDEBAND

/EXEC (ADARUN,ADA.MOD)
ADARUN PROG=ADALOD,DB=yyyyy,IDTNAME=ADABAS5B
ADALOD LOAD FILE=1
ADALOD NAME= TESTFILE-1 
ADALOD MAXISN=10000,DSSIZE=10
ADALOD TEMPSIZE=100,SORTSIZE=50
/LOGOFF NOSPOOL

Update

In SDF Format:

/.ADALOD LOGON
/MODIFY-TEST-OPTIONS DUMP=YES
/REMARK *
/REMARK * A D A L O D LOAD FILE
/REMARK *
/DELETE-FILE LOD.ISN    
/SET-JOB-STEP
/CREATE-FILE LOD.ISN,PUB(SPACE=(48,48))
/SET-JOB-STEP
/DELETE-FILE LOD.OLD    
/SET-JOB-STEP
/CREATE-FILE LOD.OLD,PUB(SPACE=(480,48))
/SET-JOB-STEP
/ASS-SYSLST L.LOD.LOAD
/ASS-SYSDTA *SYSCMD
/SET-FILE-LINK DDLIB,ADAvrs.MOD
/SET-FILE-LINK DDASSOR1,ADAyyyyy.ASSO,SHARE-UPD=YES
/SET-FILE-LINK DDDATAR1,ADAyyyyy.DATA,SHARE-UPD=YES
/SET-FILE-LINK DDWORKR1,ADAyyyyy.WORK,SHARE-UPD=YES
/SET-FILE-LINK DDTEMPR1,ADAyyyyy.TEMP
/SET-FILE-LINK DDSORTR1,ADAyyyyy.SORT
/SET-FILE-LINK DDEBAND,CMP.AUS
/SET-FILE-LINK DDISN,LOD.ISN
/SET-FILE-LINK DDOLD,LOD.OLD
/START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY
ADARUN PROG=ADALOD,DB=yyyyy,IDTNAME=ADABAS5B
ADALOD UPDATE FILE=1,DDISN,SAVEDREC
ADALOD TEMPSIZE=100,SORTSIZE=50
ADALOD DELISN=100 199,230,301 399
/LOGOFF SYS-OUTPUT=DEL

In ISP Format:

/.ADALOD LOGON
/OPTION MSG=FH,DUMP=YES
/REMARK *
/REMARK * A D A L O D MASS UPDATE
/REMARK *
/SYSFILE SYSLST=L.LOD.UPDA
/FILE ADA.MOD,LINK=DDLIB
/FILE ADAyyyyy.ASSO ,LINK=DDASSOR1,SHARUPD=YES
/FILE ADAyyyyy.DATA ,LINK=DDDATAR1,SHARUPD=YES
/FILE ADAyyyyy.WORK ,LINK=DDWORKR1,SHARUPD=YES
/FILE ADAyyyyy.TEMP ,LINK=DDTEMPR1
/FILE ADAyyyyy.SORT ,LINK=DDSORTR1
/FILE CMP.AUS,LINK=DDEBAND
/FILE LOD.ISN,LINK=DDISN ,SPACE=(48,48)
/FILE LOD.OLD,LINK=DDOLD ,SPACE=(480,48)
/EXEC (ADARUN,ADA.MOD)
ADARUN PROG=ADALOD,DB=yyyyy,IDTNAME=ADABAS5B
ADALOD UPDATE FILE=1,DDISN,SAVEDREC
ADALOD TEMPSIZE=100,SORTSIZE=50
ADALOD DELISN=100 199,230,301 399
/LOGOFF NOSPOOL

Top of page

OS/390 or z/OS

Dataset DD Name Storage More Information
Associator DDASSORn disk  
Data Storage DDDATARn disk  
Work DDWORKR1
DDWORKR4
disk Required only if Adabas nucleus is not active
Temp area DDTEMPR1 disk  
Temp overflow
(optional)
DDFILEA disk/ tape Stores descriptor values if the temp dataset is too small
Sort area DDSORTR1 disk  
Sort area DDSORTR2 disk When using large files, split the sort area across two volumes 1
Recovery log (RLOG) DDRLOGR1 disk Required for the recovery log option
Compressed data DDEBAND disk/ tape Output of ADACMP or ADAULD utility
ISNs to be deleted DDISN disk/ tape ISNs to be deleted 2
Deleted records DDOLD disk/ tape Deleted records, if any 3
ADARUN parameters DDCARD reader Operations
ADALOD parameters DDKARTE reader  
ADARUN messages DDPRINT printer ADALOD report, see also Messages and Codes
ADALOD messages DDDRUCK printer Messages and Codes

Notes:

  1. Performance can be improved when sorting large files if the sort dataset either occupies two volumes, or if two sort datasets are specified. When using two volumes, each volume must be exactly half the size specified by the SORTSIZE parameter. If two datasets are used, both must be on the same device type (SORTDEV parameter).
  2. Four bytes per ISN, RECFM=VB, BLKSIZE as in sequential file description, LRECL maximum equals BLKSIZE - 4.
  3. RECFM=VB, BLKSIZE as in sequential file description, LRECL maximum equals BLKSIZE - 4.

ADALOD JCL Examples (OS/390 or z/OS)

Refer also to ADALODE, ADALODA, ADALODM, and ADALODV in the MVSJOBS dataset for additional ADALOD examples on loading an ADAM file or the Adabas demo files.

Load File

Refer to ADALOD in the MVSJOBS dataset for this example.

//ADALOD    JOB
//*
//*    ADALOD: LOAD FILE
//*
//LOD      EXEC PGM=ADARUN
//STEPLIB   DD   DISP=SHR,DSN=ADABAS.Vvrs.LOAD      <=== ADABAS LOAD
//*
//DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1 <=== ASSO
//DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1 <=== DATA
//DDWORKR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.WORKR1 <=== WORK
//DDTEMPR1  DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.TEMPR1 <=== TEMP
//DDSORTR1  DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.SORTR1 <=== SORT
//DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.DDEBAND <=== INPUT
//DDDRUCK   DD   SYSOUT=X
//DDPRINT   DD   SYSOUT=X
//SYSUDUMP  DD   SYSOUT=X
//DDCARD    DD   *
ADARUN PROG=ADALOD,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
/*
//DDKARTE   DD   *
ADALOD LOAD FILE=1
ADALOD NAME='TESTFILE-1'
ADALOD MAXISN=10000,DSSIZE=10
ADALOD TEMPSIZE=100,SORTSIZE=100
/*

Update

Refer to ADALODMU in the MVSJOBS dataset for this example.

//ADALODMU  JOB
//*
//*      ADALOD: MASS UPDATE
//*
//LOD       EXEC PGM=ADARUN
//STEPLIB   DD   DISP=SHR,DSN=ADABAS.Vvrs.LOAD               <=== ADABAS LOAD
//*                                                          
//DDASSOR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.ASSOR1         <=== ASSO
//DDDATAR1  DD   DISP=SHR,DSN=EXAMPLE.DByyyyy.DATAR1         <=== DATA
//DDTEMPR1  DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.TEMPR1         <=== TEMP
//DDSORTR1  DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.SORTR1         <=== SORT
//DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.DDEBAND        <=== INPUT
//DDISN     DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.DDISN          <=== ISNS TO DEL
//DDOLD     DD   DISP=(NEW,CATLG),DSN=EXAMPLE.DByyyyy.DDOLD, <=== DEL REC
//            SPACE=(TRK,(100,20),RLSE),UNIT=DISK,VOL=SER=VOLvvv
//DDDRUCK   DD   SYSOUT=X
//DDPRINT   DD   SYSOUT=X
//SYSUDUMP  DD   SYSOUT=X
//DDCARD    DD   *
ADARUN PROG=ADALOD,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
/*
//DDKARTE   DD   *
ADALOD UPDATE FILE=1,LWP=400K,SAVEDREC
ADALOD TEMPSIZE=100,SORTSIZE=100
ADALOD DELISN=100-199,230,301-399
/*

Top of page

VM/ESA or z/VM

Dataset DD Name Storage More Information
Associator DDASSORn disk  
Data Storage DDATARn disk  
Work DDWORKR1
DDWORKR4
disk  
Temp area DDTEMPR1 disk  
Temp overflow
(optional)
DDFILEA disk/ tape Stores descriptor values if temp dataset is too small.
Sort area DDSORTR1 disk With large files, split sort area across two volumes 1
Sort area DDSORTR2 disk
Recovery log (RLOG) DRLOGR1 disk Required for the recovery log option
Compressed data DDEBAND disk/ tape Output of ADACMP or ADAULD utility
ISNs to be deleted DDISN disk/ tape ISNs to be deleted 2
Deleted records DDOLD disk/ tape Deleted records, if any 3
ADARUN parameters DDCARD disk/ terminal/ reader Operations
ADALOD parameters DDKARTE disk/ terminal/ reader  
ADARUN messages DDPRINT disk/ terminal/ printer ADALOD report, see also Messages and Codes
ADALOD messages DDDRUCK disk/ terminal/ printer Messages and Codes

Notes:

  1. Performance can be improved when sorting large files if the sort dataset either occupies two volumes, or if two sort datasets are specified. Both datasets must be on the same device type (SORTDEV parameter), and each must be exactly half the size specified by the SORTSIZE parameter.
  2. Four bytes per ISN, RECFM=VB, BLKSIZE as in sequential file description, LRECL maximum equals BLKSIZE - 4.
  3. RECFM=VB, BLKSIZE as in sequential file description, LRECL maximum equals BLKSIZE - 4.

ADALOD JCL Examples (VM/ESA or z/VM)

Load File

DATADEF DDASSOR1,DSN=ADABASVv.ASSO,VOL=ASSOV1
DATADEF DDDATAR1,DSN=ADABASVv.DATA,VOL=DATAV1
DATADEF DDWORKR1,DSN=ADABASVv.WORK,VOL=WORKV1
DATADEF DDTEMPR1,DSN=ADABASVv.TEMP,VOL=TEMPV1
DATADEF DDSORTR1,DSN=ADABASVv.SORT,VOL=SORTV1
DATADEF DDEBAND,DSN=FILE001.LODD001,MODE=A
DATADEF DDPRINT,DSN=ADALOD.DDPRINT,MODE=A
DATADEF DUMP,DUMMY
DATADEF DDDRUCK,DSN=ADALOD.DDDRUCK,MODE=A
DATADEF DDCARD,DSN=RUNLOD.CONTROL,MODE=A
DATADEF DDKARTE,DSN=FILE001.LODC001,MODE=A
ADARUN

Contents of RUNLOD CONTROL A1:

ADARUN PROG=ADALOD,DEVICE=dddd,DB=yyyyy

Contents of FILE015 LODC001 A1:

ADALOD LOAD FILE=1
ADALOD      NAME='TESTFILE-1'
ADALOD      MAXISN=50000,DSSIZE=10
ADALOD      TEMPSIZE=100,SORTSIZE=50

Update

DATADEF DDASSOR1,DSN=ADABASVv.ASSO,VOL=ASSOV1
DATADEF DDDATAR1,DSN=ADABASVv.DATA,VOL=DATAV1
DATADEF DDWORKR1,DSN=ADABASVv.WORK,VOL=WORKV1
DATADEF DDTEMPR1,DSN=ADABASVv.TEMP,VOL=TEMPV1
DATADEF DDSORTR1,DSN=ADABASVv.SORT,VOL=SORTV1
DATADEF DDEBAND,DSN=ADALOD.LODD015,MODE=A
DATADEF DDISN,DSN=ADALOD.ISN,MODE=A
DATADEF DDOLD,DSN=ADABASVv.OLDISN,MODE=A
DATADEF DDPRINT,DSN=ADALOD.DDPRINT,MODE=A
DATADEF DUMP,DUMMY
DATADEF DDDRUCK,DSN=ADALOD.DDDRUCK,MODE=A
DATADEF DDCARD,DSN=RUNLOD.CONTROL,MODE=A
DATADEF DDKARTE,DSN=UPDATE.CONTROL,MODE=A
ADARUN                     

Contents of RUNLOD CONTROL A1:

ADARUN PROG=ADALOD,DEVICE=dddd,DB=yyyyy

Contents of UPDATE CONTROL A1:

ADALOD UPDATE FILE=1,DDISN,SAVEDREC

ADALOD        TEMPSIZE=100,SORTSIZE=50
ADALOD        DELISN=100-199,230,301-399

Top of page

VSE/ESA

Dataset Symbolic Storage Logical Unit More Information
Associator ASSORn disk   1
Data Storage DATARn disk   1
Work WORKR1 disk 1 Required for inactive nucleus
Compressed data EBAND tape
disk
SYS010
1
 
Recovery log (RLOG) RLOGR1 disk   Required for the recovery log option
Temp area TEMPR1 disk 1  
Temp overflow
(optional)
FILEA tape
disk
SYS012
1
Stores descriptor values if the temp dataset is too small.
Sort area SORTR1 disk   With large files, split sort area across two volumes 2
ISNs to be deleted ISN tape
disk
SYS016
1
ISNs to be deleted
Deleted records OLD tape
disk
SYS014
1
Deleted ISNs
ADALOD messages -- printer SYS009 ADALOD report, see also Messages and Codes
ADARUN messages -- printer SYSLST Messages and Codes
ADARUN parameters --
CARD
CARD
reader
tape
disk
SYSRDR SYS000
1
 
ADALOD parameters - reader SYSIPT  

Notes:

  1. Any programmer logical unit may be used.
  2. Performance can be improved when sorting large files if the sort dataset occupies two volumes. When using two volumes, each volume must be exactly half the size specified by the SORTSIZE parameter. If two datasets are used, both must be on the same device type (SORTDEV parameter).

ADALOD JCS Examples (VSE/ESA)

See Procedures for VSE/ESA Examples for a description of the VSE/ESA procedures (PROCs).

Load File

Refer to member ADALOD.X for this example.

* $$ JOB JNM=ADALOD,CLASS=A,DISP=D
* $$ LST CLASS=A,DISP=D
// JOB ADALOD
*       SAMPLE FILE LOAD
// EXEC PROC=ADAVvLIB
// EXEC PROC=ADAVvFIL
// ASSGN SYSTEN,TAPE
// PAUSE MOUNT LOAD INPUT FILE ON TAPE cuu
// TLBL EBAND,'DEMO.FILE'
// MTC REW,SYS010
// EXEC ADARUN,SIZE=ADARUN
ADARUN PROG=ADALOD,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
/*
ADALOD LOAD FILE=1
ADALOD NAME='TESTFILE-1'
ADALOD MAXISN=10000,DSSIZE=10
ADALOD TEMPSIZE=100,SORTSIZE=100
/*
/&
* $$ EOJ

Update

Refer to member ADALODMU.X for this example.

* $$ JOB JNM=ADALODMU,CLASS=A,DISP=D
* $$ LST CLASS=A,DISP=D
// JOB ADALODMU
*       MASS UPDATE
// EXEC PROC=ADAVvLIB
// EXEC PROC=ADAVvFIL
// ASSGN SYS010,DISK,VOL=DISK01,SHR
// ASSGN SYS014,DISK,VOL=DISK02,SHR
// ASSGN SYS016,DISK,VOL=DISK03,SHR
// DLBL EBAND,'FILE.INPUT',,SD
// EXTENT SYS010,DISK01,1,0,sssss,nnnnn
// DLBL OLD,'FILE.OLD',,SD
// EXTENT SYS014,DISK02,1,0,sssss,nnnnn
// DLBL ISN,'FILE.ISN',,SD
// EXTENT SYS016,DISK03,1,0,sssss,nnnnn
// EXEC ADARUN,SIZE=ADARUN
ADARUN PROG=ADALOD,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
/*
ADALOD UPDATE FILE=1,LWP=400K,SAVEDREC
ADALOD TEMPSIZE=100,SORTSIZE=100
ADALOD DELISN=100-199,230,301-399
/*
/&
* $$ EOJ

Top of page