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

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:

graphics/util_adarun_uex6.png

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:

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). 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