You can process the ACIF parameters that are needed to produce
the telephone bill by Creating and specifying a parameter file.
z/OS parameter file
The JCL for a z/OS® parameter
file is shown in Figure 1. This example
creates a sequential data set; however, if you need a partitioned
data set, change the parameters as follows:
Set RESFILE=PDS.
Set the SPACE and DSORG parameters in the DD statement of the
data set named by the RESOBJDD parameter to SPACE=(12288,(150,15,15)),DSORG=PO.
Failure to set these parameters as described might produce a
RESOBJDD data set that is unusable.
Figure 1. Example of a z/OS parameter file
//job... JOB ...
//APKSMAIN EXEC PGM=APKACIF,REGION=8M,TIME=(,30)
//*===============================================================*
//* RUN APK, CREATING OUTPUT AND A RESOURCE LIBRARY *
//*===============================================================*
//STEPLIB DD DSN=APKACIF.LOAD,DISP=SHR
//INPUT DD DSN=USER.ACIFEX2.DATA,DISP=SHR
//SYSIN DD *
/* Example phone bill */
/* DATA CHARACTERISTICS */
CC = YES /* Carriage control used */
CCTYPE = A /* Carriage control type */
CHARS = GT15
CPGID = 500 /* Code page identifier */
/* FIELD AND INDEX DEFINITION */
FIELD1 = 13,66,15 /* Account Number */
FIELD2 = 0,50,30 /* Name */
FIELD3 = 1,50,30 /* Address */
FIELD4 = 2,50,30 /* City, State, ZIP */
FIELD5 = 4,60,12 /* Date Due */
INDEX1 = 'Account Number',FIELD1 /* 1st INDEX attribute */
INDEX2 = 'Name',FIELD2 /* 2nd INDEX attribute */
INDEX3 = 'Address',FIELD3 /* 3rd INDEX attribute */
INDEX4 = 'City, State, ZIP',FIELD4 /* 4th INDEX attribute */
INDEX5 = 'Date Due',FIELD5 /* 5th INDEX attribute */
/* INDEXING INFORMATION */
INDEXOBJ = ALL
/* RESOURCE INFORMATION */
FORMDEF = F1A10110 /* Formdef name */
PAGEDEF = P1A08682 /* Pagedef name */
FDEFLIB = SYS1.FDEFLIB
FONTLIB = SYS1.FONTLIBB,SYS1.FONTLIBB.EXTRA
OBJCONLIB = USER.PSEGLIB
OVLYLIB = SYS1.OVERLIB
PDEFLIB = SYS1.PDEFLIB
PSEGLIB = SYS1.PSEGLIB
RESFILE = SEQ /* Resource file type */
RESTYPE = FDEF,PSEG,OVLY /* Resource type selection */
/* FILE INFORMATION */
INDEXDD = INDEX /* Index file ddname */
INPUTDD = INPUT /* Input file ddname */
OUTPUTDD = OUTPUT /* Output file ddname */
RESOBJDD = RESLIB /* Resource file ddname */
/* EXIT AND TRIGGER INFORMATION */
TRIGGER1 = *,1,'1' /* 1st TRIGGER */
TRIGGER2 = 13,50,'ACCOUNT NUMBER:' /* 2nd TRIGGER */
/*
//OUTPUT DD DSN=APKACIF.OUTPUT,DISP=(NEW,CATLG),
// SPACE=(32760,(150,150),RLSE),UNIT=SYSDA,
// DCB=(LRECL=32756,BLKSIZE=32760,RECFM=VBM,DSORG=PS)
//INDEX DD DSN=APKACIF.INDEX,DISP=(NEW,CATLG),
// SPACE=(32760,(15,15),RLSE),UNIT=SYSDA,
// DCB=(LRECL=32756,BLKSIZE=32760,RECFM=VBM,DSORG=PS)
//RESLIB DD DSN=APKACIF.RESLIB,DISP=(NEW,CATLG),
// SPACE=(32760,(150,150),RLSE),UNIT=SYSDA,
// DCB=(LRECL=32756,BLKSIZE=32760,RECFM=VBM,DSORG=PS)
//SYSPRINT DD DSN=APKACIF.SYSPRINT,DISP=(NEW,CATLG),
// SPACE=(9044,(15,15),RLSE),UNIT=SYSDA,
// DCB=(LRECL=137,BLKSIZE=1374,RECFM=VBA,DSORG=PS)
VM parameter file
The CMS commands for a VM parameter file are shown in Figure 2. Figure 2. Example of a VM parameter file
FILEDEF INPUT DISK ACIFEX2 SYSIN A
FILEDEF OUTPUT DISK APKACIF OUTPUT A (LRECL 32756 BLKSIZE 32760 RECFM VB
FILEDEF INDEX DISK APKACIF INDEX A (LRECL 32756 BLKSIZE 32760 RECFM VB
FILEDEF RESLIB DISK APKACIF RESLIB A (LRECL 32756 BLKSIZE 32760 RECFM VB
FILEDEF SYSPRINT DISK APKACIF SYSPRINT A
APKACIF
Where file ACIFEX2 SYSIN A contains the following:
/* Example phone bill */
/* DATA CHARACTERISTICS */
CC = YES /* Carriage control used */
CCTYPE = A /* Carriage control type */
CHARS = GT15
CPGID = 500 /* Code page identifier */
FDEFLIB = FDEF3820,FDEF38PP
/* INDEXING INFORMATION */
FIELD1 = 13,66,15 /* Account Number */
FIELD2 = 0,50,30 /* Name */
FIELD3 = 1,50,30 /* Address */
FIELD4 = 2,50,30 /* City, State, ZIP */
FIELD5 = 4,60,12 /* Date Due */
INDEX1 = 'Account Number',FIELD1 /* 1st INDEX */
INDEX2 = 'Name',FIELD2 /* 2nd INDEX */
INDEX3 = 'Address',FIELD3 /* 3rd INDEX */
INDEX4 = 'City, State, ZIP',FIELD4 /* 4th INDEX */
INDEX5 = 'Date Due',FIELD5 /* 5th INDEX */
/* FILE INFORMATION */
INDEXDD = INDEX /* Index file ddname */
INPUTDD = INPUT /* Input file ddname */
OUTPUTDD = OUTPUT /* Output file ddname */
RESOBJDD = RESLIB /* Resource file ddname */
/* RESOURCE INFORMATION */
FORMDEF = F1A10110 /* Formdef name */
PAGEDEF = P1A08682 /* Pagedef name */
FONTLIB = FONT3820,FONT38PP
OBJCONLIB = OBJC3820
OVLYLIB = OVLY3820,OVLY38PP
PDEFLIB = PDEF3820,PDEF38PP
PSEGLIB = PSEG3820,PSEG38PP
RESFILE = SEQ /* Resource file type */
RESTYPE = FDEF,PSEG,OVLY /* Resource type selection */
/* EXIT AND TRIGGER INFORMATION */
TRIGGER1 = *,1,'1' /* 1st TRIGGER */
TRIGGER2 = 13,50,'ACCOUNT NUMBER:' /* 2nd TRIGGER */
VSE parameter file
The JCL for a VSE parameter file is shown in Figure 3.
Figure 3. Example of a VSE parameter file
// JOB
// LIBDEF PHASE,SEARCH=(PRD2.AFP)
// ASSGN SYSLST,X'FEE'
// ASSGN SYS006,201
// DLBL INPUT,'APKACIF.INPUT',0,SD
// EXTENT SYS006,SYSWK1,1,1,9200,13
// ASSGN SYS007,201
// DLBL OUTPUT,'APKACIF.OUTPUT',0,SD
// EXTENT SYS007,SYSWK1,1,1,9213,45
// ASSGN SYS008,201
// DLBL RESOBJ,'APKACIF.RESLIB',0,SD
// EXTENT SYS008,SYSWK1,1,1,9258,15
// ASSGN SYS009,201
// DLBL INDEX,'APKACIF.INDEX',0,SD
// EXTENT SYS009,SYSWK1,1,1,9273,15
// EXEC PGM=APKACIF,SIZE=548K
/* DATA CHARACTERISTICS */
CC = YES /* Carriage control used */
CCTYPE = A /* Carriage control type */
CHARS = GT15
CPGID = 500 /* Code page identifier */
/* FIELD AND INDEX DEFINITION */
FIELD1 = 13,66,15 /* Account Number */
FIELD2 = 0,50,30 /* Name */
FIELD3 = 1,50,30 /* Address */
FIELD4 = 2,50,30 /* City, State, ZIP */
FIELD5 = 4,60,12 /* Date Due */
INDEX1 = 'Account Number',FIELD1 /* 1st INDEX */
INDEX2 = 'Name',FIELD2 /* 2nd INDEX */
INDEX3 = 'Address',FIELD3 /* 3rd INDEX */
INDEX4 ='City, State, ZIP',FIELD4 /* 4th INDEX */
INDEX5 = 'Date Due',FIELD5 /* 5th INDEX */
/* FILE INFORMATION */
INDEXDD = INDEX /* Index file ddname */
INPUTDD = INPUT /* Input file ddname */
OUTPUTDD = OUTPUT /* Output file ddname */
RESOBJDD = RESOBJ /* Resource file ddname */
/* RESOURCE INFORMATION */
FORMDEF = F1A10110 /* Formdef name */
PAGEDEF = P1A08682 /* Pagedef name */
RESFILE = SEQ /* Resource file type */
RESTYPE = FDEF,PSEG,OVLY /* Resource type selection */
/* EXIT AND TRIGGER INFORMATION */
TRIGGER1 = *,1,'1' /* 1st TRIGGER */
TRIGGER2 = 13,50,'ACCOUNT NUMBER:'/* 2nd TRIGGER */
/*
/&