The example provided on the previous page has one basic weakness. It cannot handle delays. If a certain job does not run one day, and on the next day it must be run twice (once for each execution day), there is a danger of overriding the tape number in the control member. To solve this problem, let’s improve our tape clearance system.
//PDPA0001 JOB (......),BILL,CLASS=A  | 
//* %%LIBSYM CTM.LIB.SYMBOLS %%MEMSYM TAPE%%OMONTH.%%ODAY  | 
//STEP02 EXEC PDINP3  | 
//S001.INPUT DD VOL=SER=%%FEDERAL_BANK_TAPE  | 
//  | 
The TAPE0714 member in the CTM.LIB.SYMBOLS library contains:
:  | 
*  | 
* EXTERNAL TAPES LIST  | 
*  | 
%%FEDERAL_BANK_TAPE=045673  | 
%%IRS_TAPE=XXXXX  | 
%%STOCK_EXCHANGE_TAPE=YYYYYY  | 
.  | 
.  | 
There are other advantages:
Use a Control-M job to automatically create a member, TAPEmmdd, for each scheduling date, based on a master copy. For example:
// EXEC PGM=IEBCOPY  | 
.  | 
//SYSIN DD *  | 
C I=IN, O=OUT  | 
S M=((TAPES,TAPE%%OMONTH.%%ODAY))  | 
Parent Topic |