JCL/JCS Requirements and Examples

#### Search Results

Search

# JCL/JCS Requirements and Examples

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

Note
When the recovery log is active, sequential data sets used by the utilities whose runs are logged on the RLOG must be kept and made available for any recovery operation; for example, the DD/EBAND input to an ADALOD LOAD operation.

This document covers the following topics:

- User Exits with ADACMP

- BS2000

- z/OS

- z/VSE

## User Exits with ADACMP

- Compression with User Exit

- Collation with User Exit

### Compression with User Exit

User exit 6 can be used to perform user processing on a record before it is processed by the ADACMP COMPRESS utility. It can also be used to control the sequence and contents of the decompressed records that are output from the ADACMP DECOMPRESS utility; when used in this way, the user exit controls which decompressed records ADACMP writes to the DDAUSBA data set. For more information about user exit 6, read User Exit 6 (User Processing Before Data Compression) .

If user exit 6 is to be used during ADACMP execution, the specified user exit routine must be loadable at execution time; that is, it must be assembled and linked into the Adabas

- load library (or any library concatenated with it) for BS2000 or z/OS.

- core image library or any library contained in the core image library search chain for z/VSE.

The ADACMP COMPRESS utility job must specify:

where:

exit-name | is the name of a user routine that gets control at the user exit; the name can be up to 8 characters long.

For more information, read UEXn : User Exit .

### Collation with User Exit

If a collation user exit is to be used during ADACMP 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:

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). For more information, read CDXnn : Collation Descriptor User Exit .

## BS2000

File | Link Name | Storage | More Information
--- | --- | --- | ---
User input data (COMPRESS function) | DDEBAND | tape/ disk |
Compressed data (DECOMPRESS function) | DDEBAND | tape/ disk | Not used if the parameter INFILE is used
Compressed data for a data base with files containing large object (LB) fields (COMPRESS function) | DDAUSB1 | tape/disk | This additional data set receives the compressed large object records to be loaded into the LOB file as the compressed records in the first output data set (DDAUSBA) are loaded into the base file.
Compressed data (COMPRESS function) | DDAUSBA | tape/ disk |
Decompressed data (DECOMPRESS function) | DDAUSBA | tape/ disk |
Rejected data | DDFEHL | tape/ disk |
ECS encoding objects | DDECSOJ | tape/ disk | Required for universal encoding support (UES)
Time zone file | TZINFO | disk | Required with the TZ parameter.
ADARUN parameters | SYSDTA/ DDCARD |  | Adabas Operations Manual
ADACMP parameters and data definitions | SYSDTA/ DDKARTE |  | Adabas Utilities Manual
ADARUN messages | SYSOUT/ DDPRINT | printer/ disk | Adabas Messages and Codes Manual
ADACMP report | SYSLST/ DDDRUCK | printer/ disk | Adabas Messages and Codes Manual

### JCL Examples (BS2000)

#### ADACMP COMPRESS

#### In SDF Format:

    /.ADACMP SET-LOGON-PARAMETERS
    /MODIFY-TEST-OPTIONS DUMP=YES
    /REMARK *
    /REMARK * A D A C M P COMPRESS
    /REMARK *
    /DELETE-FILE CMP.AUS
    /SET-JOB-STEP
    /DELETE-FILE CMP.FEHL
    /SET-JOB-STEP
    /CREATE-FILE CMP.AUS,PUB(SPACE=(48,48)
    /SET-JOB-STEP
    /CREATE-FILE CMP.FEHL,PUB(SPACE=(48,48))
    /SET-JOB-STEP
    /ASS-SYSLST L.CMP
    /ASS-SYSDTA *SYSCMD
    /SET-FILE-LINK DDLIB,ADAvrs.MOD
    /SET-FILE-LINK BLSLIB01,$.SYSLNK.LMS
    /SET-FILE-LINK DDEBAND,CMP.EIN
    /SET-FILE-LINK DDAUSBA,CMP.AUS
    /SET-FILE-LINK DDFEHL,CMP.FEHL
    /SET-FILE-LINK TZINFO,ADAvrs.TZ00
    /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY,RUN-MODE=A(ALT-LIB=Y)
    ADARUN PROG=ADACMP,DB=yyyyy,IDTNAME=ADABAS5B
    ADACMP COMPRESS NUMREC=1000,FDT=1,USERISN,DEVICE=dddd,eeee
    /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADACMP LOGON
    /OPTION MSG=FH,DUMP=YES
    /REMARK *
    /REMARK * A D A C M P COMPRESS
    /REMARK *
    /ER CMP.AUS
    /STEP
    /ER CMP.FEHL
    /STEP
    /SYSFILE SYSLST=L.CMP
    /FILE ADA.MOD,LINK=DDLIB
    /FILE CMP.EIN,LINK=DDEBAND
    /FILE CMP.AUS,LINK=DDAUSBA,SPACE=(48,48)
    /FILE CMP.FEHL,LINK=DDFEHL,SPACE=(48,48)
    /EXEC (ADARUN,ADA.MOD)
    ADARUN PROG=ADACMP,DB=yyyyy,IDTNAME=ADABAS5B
    ADACMP COMPRESS NUMREC=1000,FDT=1,USERISN,DEVICE=dddd,eeee
    /LOGOFF NOSPOOL

#### ADACMP DECOMPRESS

#### In SDF Format:

    /.ADACMP SET-LOGON-PARAMETERS
    /MODIFY-TEST-OPTIONS DUMP=YES
    /REMARK *
    /REMARK * A D A C M P DECOMPRESS
    /REMARK *
    /DELETE-FILE CMP.AUS
    /SET-JOB-STEP
    /DELETE-FILE CMP.FEHL
    /SET-JOB-STEP
    /CREATE-FILE CMP.AUS,PUB(SPACE=(48,48))
    /SET-JOB-STEP
    /CREATE-FILE CMP.FEHL,PUB(SPACE=(48,48))
    /SET-JOB-STEP
    /ASS-SYSLST L.DEC
    /ASS-SYSDTA *SYSCMD
    /SET-FILE-LINK DDLIB,ADAvrs.MOD
    /SET-FILE-LINK BLSLIB01,$.SYSLNK.LMS
    /SET-FILE-LINK DDEBAND,CMP.EIN
    /SET-FILE-LINK DDAUSBA,CMP.AUS
    /SET-FILE-LINK DDFEHL,CMP.FEHL
    /SET-FILE-LINK TZINFO,ADAvrs.TZ00
    /START-PROGRAM *M(ADA.MOD,ADARUN),PR-MO=ANY,RUN-MODE=A(ALT-LIB=Y)
    ADARUN PROG=ADACMP,DB=yyyyy,IDTNAME=ADABAS5B
    ADACMP DECOMPRESS
    /EXIT-JOB MODE=NORMAL,SYS-OUT=NONE

#### In ISP Format:

    /.ADACMP LOGON
    /OPTION MSG=FH,DUMP=YES
    /REMARK *
    /REMARK * A D A C M P DECOMPRESS
    /REMARK *
    /ER CMP.AUS
    /STEP
    /ER CMP.FEHL
    /STEP
    /SYSFILE SYSLST=L.CMP.DEC
    /FILE ADA.MOD,LINK=DDLIB
    /FILE CMP.EIN,LINK=DDEBAND
    /FILE CMP.AUS,LINK=DDAUSBA,SPACE=(48,48)
    /FILE CMP.FEHL,LINK=DDFEHL,SPACE=(48,48)
    /EXEC (ADARUN,ADA.MOD)
    ADARUN PROG=ADACMP,DB=yyyyy,IDTNAME=ADABAS5B
    ADACMP DECOMPRESS
    /LOGOFF NOSPOOL

#### Using ADACMP with UES Parameters, Wide Field Formats, or Collation Descriptions

The following SDF-format example can be seen in member ADACMPU(J) of the ADABAS.SRC data set.

    /.ADACMP LOGON
    /MODIFY-TEST-OPTIONS DUMP=YES
    /REMARK *
    /REMARK * A D A C M P COMPRESS
    /REMARK   COMPRESS A FILE USING UES FEATURES
    /REMARK *
    /DELETE-FILE CMP.AUS
    /SET-JOB-STEP
    /DELETE-FILE CMP.FEHL
    /SET-JOB-STEP
    /CREATE-FILE CMP.AUS,PUB(SPACE=(48,48)
    /SET-JOB-STEP
    /CREATE-FILE CMP.FEHL,PUB(SPACE=(48,48))
    /SET-JOB-STEP
    /ASS-SYSLST L.CMP
    /SET-FILE-LINK DDLIB,ADAvrs.MOD
    /SET-FILE-LINK BLSLIB00,ADAvrs.MOD
    /SET-FILE-LINK BLSLIB01,APSvrs.LIB
    /CALL-PROCEDURE (ADABAS.SRC,LMSLINKLIB),(LNK-NAME=BLSLIB02)
    /SET-FILE-LINK DDEBAND,CMP.EIN
    /SET-FILE-LINK DDAUSBA,CMP.AUS
    /SET-FILE-LINK DDFEHL,CMP.FEHL
    /SET-FILE-LINK TZINFO,ADAvrs.TZ00
    /SET-FILE-LINK DDECSOJ,ADAvrs.EC00
    /ASS-SYSDTA *SYSCMD
    /START-PROG *M(E=ADARUN,L=ADAvrs.MOD),PR-MO=ANY,R-M=*A(ALT=Y,LOAD-INF=*REF,-
    / UNRES=*DELAY,MESSAGE=*ERROR)
    ADARUN PROG=ADACMP,DB=yyyyy,IDTNAME=ADABAS5B
    ADACMP COMPRESS FILE=1
    ADACMP FACODE=273
    ADACMP FNDEF='01,AA,008,B,DE'
    ADACMP FNDEF='01,BA,020,A,NU,DE'
    ADACMP FNDEF='01,BB,015,A,NU,DE'
    ADACMP FNDEF='01,BC,001,A,FI'
    ADACMP FNDEF='01,CA,001,A,NU,DE'
    ADACMP FNDEF='01,CB,002,U,NU,DE'
    ADACMP FNDEF='01,CC,010,A,NU,DE'
    ADACMP FNDEF='01,CD,002,U,NU,DE'
    ADACMP FNDEF='01,DA,005,U,NU'
    ADACMP FNDEF='01,DB,020,A,NU,DE'
    ADACMP FNDEF='01,DC,015,A,NU,DE'
    ADACMP FNDEF='01,DD,002,A,NU,DE'
    ADACMP FNDEF='01,DE,005,U,NU,DE'
    ADACMP FNDEF='01,DF,008,A,NU,DE'
    ADACMP FNDEF='01,FA,020,A,NU,DE'
    ADACMP FNDEF='01,FB,006,U,NU,DE'
    ADACMP FNDEF='01,FC,006,U,NU'
    ADACMP FNDEF='01,GA,002,U,NU'
    ADACMP FNDEF='01,HA,002,U,NU'
    ADACMP FNDEF='01,IA,002,U,NU'
    ADACMP FNDEF='01,KA,002,U,NU'
    ADACMP FNDEF='01,LA,030,A,NU,DE'
    ADACMP SUBDE='SB=DE(3,5)'
    ADACMP SUPDE='SP=CA(1,1),CB(1,2),CD(1,2)'
    ADACMP PHONDE='PA(BA)'
    /LOGOFF SYS-OUTPUT=DEL

## z/OS

Data Set | DD Name | Storage | More Information
--- | --- | --- | ---
User input data (COMPRESS function) | DDEBAND | tape/ disk |
Compressed data (DECOMPRESS function) | DDEBAND | tape/ disk | Not used if the parameter INFILE is specified
Compressed data for a data base with files containing large object (LB) fields (COMPRESS function) | DDAUSB1 | tape/disk | This additional data set receives the compressed large object records to be loaded into the LOB file as the compressed records in the first output data set (DDAUSBA) are loaded into the base file
Compressed data (COMPRESS function) | DDAUSBA | tape/ disk |
Decompressed data (DECOMPRESS function) | DDAUSBA | tape/ disk |
Rejected data | DDFEHL | tape/ disk |
ADACMP report | DDDRUCK | printer |
ADARUN messages | DDPRINT | printer |
ADARUN parameters | DDCARD | reader |
Time zone file | TZINFO | disk | Required with the TZ parameter.
ADACMP parameters and data definitions | DDKARTE | reader |

### JCL Examples (z/OS)

In the JOBS data set, refer to ADACMP and ADACMPS for the COMPRESS examples and ADACMPD for the DECOMPRESS example.

#### ADACMP COMPRESS

This example can be found in the ADACMP member of the JOBS data set.

    //ADACMP    JOB
    //*
    //*   ADACMP COMPRESS
    //*      COMPRESS A FILE
    //*
    //CMP       EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD      <=== ADABAS LOAD
    //TZINFO    DD   DISP=SHR,DSN=ADABAS.Vvrs.TZ00
    //*
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.INPUT,UNIT=TAPE, <===
    //          VOL=SER=TAPE01                                      <===
    //DDAUSBA   DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.COMP01,UNIT=DISK, <==
    //          VOL=SER=DISK01,SPACE=(TRK,(200,10),RLSE)
    //DDFEHL    DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.FEHL,UNIT=DISK, <===
    //          VOL=SER=DISK01,SPACE=(TRK,1)
    //DDCARD    DD   *
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADACMP COMPRESS FILE=1
    ADACMP FNDEF='01,AA,008,B,DE'
    ADACMP FNDEF='01,BA,020,A,NU,DE'
    ADACMP FNDEF='01,BB,015,A,NU,DE'
    ADACMP FNDEF='01,BC,001,A,FI'
    ADACMP FNDEF='01,CA,001,A,NU,DE'
    ADACMP FNDEF='01,CB,002,U,NU,DE'
    ADACMP FNDEF='01,CC,010,A,NU,DE'
    ADACMP FNDEF='01,CD,002,U,NU,DE'
    ADACMP FNDEF='01,DA,005,U,NU'
    ADACMP FNDEF='01,DB,020,A,NU,DE'
    ADACMP FNDEF='01,DC,015,A,NU,DE'
    ADACMP FNDEF='01,DD,002,A,NU,DE'
    ADACMP FNDEF='01,DE,005,U,NU,DE'
    ADACMP FNDEF='01,DF,008,A,NU,DE'
    ADACMP FNDEF='01,FA,020,A,NU,DE'
    ADACMP FNDEF='01,FB,006,U,NU,DE'
    ADACMP FNDEF='01,FC,006,U,NU'
    ADACMP FNDEF='01,GA,002,U,NU'
    ADACMP FNDEF='01,HA,002,U,NU'
    ADACMP FNDEF='01,IA,002,U,NU'
    ADACMP FNDEF='01,KA,002,U,NU'
    ADACMP FNDEF='01,LA,030,A,NU,DE'
    ADACMP SUBDE='SB=DE(3,5)'
    ADACMP SUPDE='SP=CA(1,1),CB(1,2),CD(1,2)'
    ADACMP PHONDE='PA(BA)'
    /*

The following example can be found in member ADACMPS of the JOBS data set. This example shows the use of the ADACMP spanned record parameters and extended MU/PE limit parameters.

    //ADACMP    JOB
    //*
    //*   ADACMP COMPRESS
    //*      COMPRESS A FILE
    //*         USING MUPEX AND SPAN OPTIONS WITH 2-BYTE MU/PE COUNTS
    //*
    //CMP       EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD      <=== ADABAS LOAD
    //TZINFO    DD   DISP=SHR,DSN=ADABAS.Vvrs.TZ00
    //*
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.INPUT,UNIT=TAPE, <===
    //          VOL=SER=TAPE01                                       <===
    //DDAUSBA   DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.COMP01,UNIT=DISK, <
    //          VOL=SER=DISK01,SPACE=(TRK,(200,10),RLSE)
    //DDFEHL    DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.FEHL,UNIT=DISK, <==
    //          VOL=SER=DISK01,SPACE=(TRK,1)
    //DDCARD    DD   *
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=xxx,DEVICE=3390,DBID=YYYYY
    /*
    //DDKARTE   DD   *
    ADACMP COMPRESS FILE=1
    ADACMP FNDEF='01,AA,008,B,DE'
    ADACMP FNDEF='01,BA,020,A,NU,DE'
    ADACMP FNDEF='01,BB,015,A,NU,DE'
    ADACMP FNDEF='01,BC,001,A,FI'
    ADACMP FNDEF='01,CA,001,A,NU,DE'
    ADACMP FNDEF='01,CB,002,U,NU,DE'
    ADACMP FNDEF='01,CC,010,A,NU,DE'
    ADACMP FNDEF='01,CD,002,U,NU,DE'
    ADACMP FNDEF='01,DA,005,U,NU'
    ADACMP FNDEF='01,DB,020,A,NU,DE'
    ADACMP FNDEF='01,DC,015,A,NU,DE'
    ADACMP FNDEF='01,DD,002,A,NU,DE'
    ADACMP FNDEF='01,DE,005,U,NU,DE'
    ADACMP FNDEF='01,DF,008,A,NU,DE'
    ADACMP FNDEF='01,FA,020,A,NU,DE'
    ADACMP FNDEF='01,FB,006,U,NU,DE'
    ADACMP FNDEF='01,FC,006,U,NU'
    ADACMP FNDEF='01,GA,002,U,NU'
    ADACMP FNDEF='01,HA,002,U,NU'
    ADACMP FNDEF='01,IA,002,U,NU'
    ADACMP FNDEF='01,KA,002,U,NU'
    ADACMP FNDEF='01,LA,030,A,NU,DE'
    ADACMP FNDEF='01,MA,010,A,MU,NU,DE'
    ADACMP FNDEF='01,PB,PE'
    ADACMP FNDEF='02,P1,008,A,NU'
    ADACMP FNDEF='02,P2,002,A,NU'
    ADACMP FNDEF='02,P3,020,A,NU'
    ADACMP SUBDE='SB=DE(3,5)'
    ADACMP SUPDE='SP=CA(1,1),CB(1,2),CD(1,2)'
    ADACMP PHONDE='PA(BA)'
    ADACMP MUPEX                       <== EXTENDED MU/PE FILE
    ADACMP MUPECOUNT=2                 <== 2-BYTE MU/PE COUNTS IN INPUT
    ADACMP SPAN                        <== SPANNED RECORD FILE
    ADACMP DATADEVICE=3390             <== DATA STORAGE DEVICE TYPE
    /*
    //

#### ADACMP DECOMPRESS

The following example can be found in member ADACMPD of the JOBS data set.

    //ADACMP    JOB
    //*
    //*   ADACMP COMPRESS
    //*      DECOMPRESS A FILE
    //*
    //DECMP     EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.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
    //TZINFO    DD   DISP=SHR,DSN=ADABAS.Vvrs.TZ00
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DByyyyy.COMP01,UNIT=TAPE,
    //          VOL=SER=TAPE01
    //DDAUSBA   DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.DECOMP01,UNIT=DISK,
    //          VOL=SER=DISK01,SPACE=(TRK,(200,10),RLSE)
    //DDFEHL    DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DByyyyy.FEHL,UNIT=DISK,
    //          VOL=SER=DISK01,SPACE=(TRK,1)
    //DDCARD    DD   *
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    //DDKARTE   DD   *
    ADACMP DECOMPRESS INFILE=1
    /*

#### Using ADACMP with UES Parameters, Wide Field Formats, or Collation Descriptions

The following compression example can be found in member ADACMPU of the JOBS data set. It can be used as a basis for compression jobs that make use of UES parameters, wide-character field formats, or collation descriptors.

    //ADACMPU   JOB
    //*
    //*   ADACMP COMPRESS
    //*      COMPRESS A FILE
    //*         USING UES FEATURES
    //*
    //CMP       EXEC PGM=ADARUN
    //STEPLIB   DD   DISP=SHR,DSN=ADABAS.ADAvrs.LOAD  <=== ADABAS LOAD
    //          DD   DISP=SHR,DSN=SAG.ICSvrs.L0nn     <=== Code pages
    //*
    //TZINFO    DD   DISP=SHR,DSN=ADABAS.ADAvrs.TZ00  <=== TIMEZONE DATA
    //DDDRUCK   DD   SYSOUT=X
    //DDPRINT   DD   SYSOUT=X
    //SYSUDUMP  DD   SYSOUT=X
    //DDEBAND   DD   DISP=OLD,DSN=EXAMPLE.DBYYYYY.INPUT,UNIT=TAPE, <===
    //          VOL=SER=TAPE01                                     <===
    //DDAUSBA   DD   DSN=EXAMPLE.DBYYYYY.COMP01,UNIT=DISK,         <===
    //          VOL=SER=DISK01,SPACE=(TRK,(200,10),RLSE),DISP=(NEW,KEEP)
    //DDFEHL    DD   DISP=(NEW,KEEP),DSN=EXAMPLE.DBYYYYY.FEHL,     <===
    //          VOL=SER=DISK01,SPACE=(TRK,1),UNIT=DISK
    //DDCARD    DD   *
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=XXX,DEVICE=3390,DBID=YYYYY
    /*
    //DDKARTE   DD   *
    ADACMP COMPRESS FILE=1
    ADACMP FACODE=273
    ADACMP FNDEF='01,AA,008,B,DE'
    ADACMP FNDEF='01,BA,020,A,NU,DE'
    ADACMP FNDEF='01,BB,015,A,NU,DE'
    ADACMP FNDEF='01,BC,001,A,FI'
    ADACMP FNDEF='01,CA,001,A,NU,DE'
    ADACMP FNDEF='01,CB,002,U,NU,DE'
    ADACMP FNDEF='01,CC,010,A,NU,DE'
    ADACMP FNDEF='01,CD,002,U,NU,DE'
    ADACMP FNDEF='01,DA,005,U,NU'
    ADACMP FNDEF='01,DB,020,A,NU,DE'
    ADACMP FNDEF='01,DC,015,A,NU,DE'
    ADACMP FNDEF='01,DD,002,A,NU,DE'
    ADACMP FNDEF='01,DE,005,U,NU,DE'
    ADACMP FNDEF='01,DF,008,A,NU,DE'
    ADACMP FNDEF='01,FA,020,A,NU,DE'
    ADACMP FNDEF='01,FB,006,U,NU,DE'
    ADACMP FNDEF='01,FC,006,U,NU'
    ADACMP FNDEF='01,GA,002,U,NU'
    ADACMP FNDEF='01,HA,002,U,NU'
    ADACMP FNDEF='01,IA,002,U,NU'
    ADACMP FNDEF='01,KA,002,U,NU'
    ADACMP FNDEF='01,LA,030,A,NU,DE'
    ADACMP SUBDE='SB=DE(3,5)'
    ADACMP SUPDE='SP=CA(1,1),CB(1,2),CD(1,2)'
    ADACMP PHONDE='PA(BA)'
    /*
    //

## z/VSE

File | File Name | Storage | Logical Unit | More Information
--- | --- | --- | --- | ---
User input data (COMPRESS function) | EBAND | tape disk | SYS010 * |
Compressed data (DECOMPRESS function) | EBAND | tape disk | SYS010 * | Not used if parameter INFILE is specified
Compressed data for a data base with files containing large object (LB) fields (COMPRESS function) | AUSB1 | tape disk |  | This additional data set receives the compressed large object records to be loaded into the LOB file as the compressed records in the first output data set (AUSBA) are loaded into the base file
Compressed data (COMPRESS function) | AUSBA | tape disk | SYS012 * |
Decompressed data (DECOMPRESS function) | AUSBA | tape disk | SYS012 * |
Rejected data | FEHL | tape disk | SYS017 * |
ECS encoding objects | ECSOJ | tape disk | SYS020 * | Required for universal encoding support (UES)
ADACMP report | - | printer | SYS009 |
ADARUN messages | - | printer | SYSLST |
ADARUN parameters | - CARD CARD | reader tape disk | SYSRDR SYS000 * |
Time zone file | TZINFO | disk |  | Required with the TZ parameter.
ADACMP control cards and data definitions | - | reader | SYSIPT |

* Any programmer logical unit may be used.

### JCS Examples (z/VSE)

See Library and File Procedures for z/VSE Examples for descriptions of the z/VSE procedures.

Refer to member ADACMP.X for the COMPRESS example and member ADACMPD.X for the DECOMPRESS example.

ADACMP jobs requiring time zone support must have a TZINFO DLBL to define the library and sublibrary for accessing time zone data. The physical name associated with the DLBL must be in the form `'/library/sublib/.TIMEZONE'`. In the examples below, time zone data is accessed from the ADALIB sublibrary ADAvrsTZ. In this case, a label for ADALIB must be available to the Adabas utility job (e.g., via PROC ADAVvLIB).

#### ADACMP COMPRESS

    * $$ JOB JNM=ADACMP,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    *       COMPRESS A FILE
    // JOB ADACMP
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS010,TAPE
    // PAUSE MOUNT LOAD INPUT FILE ON TAPE cuu
    // TLBL EBAND,'EXAMPLE.DByyyyy.UNCOMP01'
    // MTC REW,SYS010
    // DLBL AUSBA,'EXAMPLE.DByyyyy.COMP01',,SD
    // EXTENT SYS016,,,,sssss,nnnnn
    // ASSGN SYS016,DISK,VOL=DISK01,SHR
    // DLBL FEHL,'EXAMPLE.DByyy.FEHL',,SD
    // EXTENT SYS017,,,,sssss,nnnnn
    // ASSGN SYS017,DISK,VOL=DISK02,SHR
    // DLBL TZINFO,'/ADALIB/ADAvrsTZ/.TIMEZONE'
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADACMP COMPRESS FILE=1
    ADACMP FNDEF='01,AA,008,B,DE'
    ADACMP FNDEF='01,BA,020,A,NU,DE'
    ADACMP FNDEF='01,BB,015,A,NU,DE'
    ADACMP FNDEF='01,BC,001,A,FI'
    ADACMP FNDEF='01,CA,001,A,NU,DE'
    ADACMP FNDEF='01,CB,002,U,NU,DE'
    ADACMP FNDEF='01,CC,010,A,NU,DE'
    ADACMP FNDEF='01,CD,002,U,NU,DE'
    ADACMP FNDEF='01,DA,005,U,NU'
    ADACMP FNDEF='01,DB,020,A,NU,DE'
    ADACMP FNDEF='01,DC,015,A,NU,DE'
    ADACMP FNDEF='01,DD,002,A,NU,DE'
    ADACMP FNDEF='01,DE,005,U,NU,DE'
    ADACMP FNDEF='01,DF,008,A,NU,DE'
    ADACMP FNDEF='01,FA,020,A,NU,DE'
    ADACMP FNDEF='01,FB,006,U,NU,DE'
    ADACMP FNDEF='01,FC,006,U,NU'

    ADACMP FNDEF='01,GA,002,U,NU'
    ADACMP FNDEF='01,HA,002,U,NU'
    ADACMP FNDEF='01,IA,002,U,NU'
    ADACMP FNDEF='01,KA,002,U,NU'
    ADACMP FNDEF='01,LA,030,A,NU,DE'
    ADACMP SUBDE='SB=DE(3,5)'
    ADACMP SUPDE='SP=CA(1,1),CB(1,2),CD(1,2)'
    ADACMP PHONDE='PA(BA)'
    /*
    /&
    * $$ EOJ

#### ADACMP DECOMPRESS

    * $$ JOB JNM=ADACMPD,CLASS=A,DISP=D
    * $$ LST CLASS=A,DISP=D
    *       DECOMPRESS A FILE
    // JOB ADACMPD
    // EXEC PROC=ADAVvLIB
    // EXEC PROC=ADAVvFIL
    // ASSGN SYS010,TAPE
    // PAUSE MOUNT LOAD INPUT FILE ON TAPE cuu
    // TLBL EBAND,'EXAMPLE.DByyyyy.COMP01'
    // MTC REW,SYS010
    // DLBL AUSBA,'EXAMPLE.DByyyyy.DECOMP01',,SD
    // EXTENT SYS016,,,,sssss,nnnnn
    // ASSGN SYS016,DISK,VOL=DISK01,SHR
    // DLBL FEHL,'EXAMPLE.DByyy.FEHL',,SD
    // EXTENT SYS017,,,,sssss,nnnnn
    // ASSGN SYS017,DISK,VOL=DISK02,SHR
    // DLBL TZINFO,'/ADALIB/ADAvrsTZ/.TIMEZONE'*
    * ******************************************************************
    *     REMEMBER TO CUSTOMIZE PARAMETERS OF ADABAS UTILITY
    * ******************************************************************
    // EXEC ADARUN,SIZE=ADARUN
    ADARUN PROG=ADACMP,MODE=MULTI,SVC=xxx,DEVICE=dddd,DBID=yyyyy
    /*
    ADACMP DECOMPRESS INFILE=1
    /*
    /&
    * $$ EOJ

### On this page

- User Exits with ADACMP
- BS2000
- z/OS
- z/VSE