If you plan to use symbols that will resolve to values based on the destination in the script files created by your processors, you need to create a Destination Configuration file. The Destination Configuration member contains statements that will be read and parsed at package shipment execution time to create symbols unique to a destination that can be used in script data set members to resolve symbols for the target destination. These symbols must have been created in the script dataset members by your processors in order for the substitution to take place correctly.
Follow these steps:
Use the following syntax to define the symbol names and values for each destination:
>>-- DESTination 'destid' ---------------------------> +<----<----<----<----<----<----<----<----<----<---+ --+--> SYMbol 'symbol-name' VALue 'symbol-value' ----> ---> . ---------------------------------------------><
This statement can be repeated for each destination and the SYMBOL and VALUE combination can be defined as many times as necessary within each statement. If SYMBOL is coded (there must be at least one) then VALUE must also be coded. To code a null value for a symbol, use two consecutive single quotes after the VALUE keyword.
Important: Symbol substitution can cause syntax errors by causing line overflows.
Consider the maximum length of your symbols, use symbol substringing to generate appropriate syntax, or both. For more information on Symbol substring syntax, see the Extended Processors Guide. Alternatively, if for example you need to substitute long symbols such as path or file names, consider using a variable blocked (RECFM=VB) script file.
Note: The content of the Destination Configuration member can be viewed from the Display Options menu and any syntax errors can be reviewed there. The name of the Destination Configuration member is displayed in the Parameter Library Information section of the Site Information from C1DEFLTS panel. On the DSN Mapping Selection List, SCRIPT appears in the Status column when a script file is identified by a mapping rule. Script Execution status can be returned and displayed in the 'Shipment Status' view by scrolling right.
Example: Destination Configuration File for Post-Ship Script
This example of a Destination Configuration file defines different values for the symbol RMTNATNUC and RMTNATLIB, depending on the target destination.
DESTINATION CA31XCM
SYMBOL 'RMTNATNUC' VALUE 'N41DB99B'
SYMBOL 'RMTNATLIB' VALUE 'BST.NAT414.LOAD' .
DESTINATION CA11LOC
SYMBOL 'RMTNATNUC' VALUE 'N42DB99B'
SYMBOL 'RMTNATLIB' VALUE 'BST.NAT427.LOAD' .
Note: This example creates &RMTNATNUC and &RMTNATLIB symbols for the Natural LOAD JCL script created in the example shown in Update Processors for Post-Ship Script Processing of Natural Objects.
You can write your own scripts or customize the model script job steps by editing the shipment JCL models (#RJNDVRA and #RJNDVRB in the CSIQOPTN library) based on your site's requirements. These models include job steps in the remote job, to be executed before or after the job copies the package outputs to their target data sets, based on the existence of a script data set in the shipment.
To enable conditional execution, a symbol represents each script data set. The symbol is based on the last qualifier of the host data set name, prefixed by the characters ZZ (for example, &ZZNATCMD for the data set BST.USER12.NATCMD. The value of the symbol will be the remote staging data set name for the script data set.
The symbols can be checked in the package ship model control members through @IF and @IFNOT statements. Therefore, the script job steps can be conditionally generated in the remote job steps based on the existence of the script data set in the shipment as determined by the resolution of the data set symbol.
Example: Model Post-Ship Script Steps for Natural Objects
The following script is provided in the model control member #RJNDVRA. This script will create a sequential file from the NATCMD file PDS members being shipped and then loads the shipped Natural objects to their Natural libraries.
The model member #RJNDVRA includes the following steps for processing the script file:
Note: To use the model #RJNDVRA script, you do not need to make any edits to the #RJNDVRB model.
@IF &ZZNATCMD
//******************************************************************** //* //* //* THESE STEPS CREATE A SEQUENTIAL FILE FROM THE NATCMD FILE PDS //* MEMBERS BEING SHIPPED AND THEN //* LOADS THE SHIPPED NATURAL OBJECTS TO THEIR //* NATURAL LIBRARIES. //* //******************************************************************** //* DELETE WORK FILES //******************************************************************** //SCR010 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEL PUBLIC.MORMI08.NATCMDT DEL PUBLIC.MORMI08.NATCMDS SET MAXCC = 0 //* //******************************************************************** //* CREATE SEQUENTIAL FILE FROM PDS MEMBERS //******************************************************************** //SCR020 EXEC PGM=IEBPTPCH //SYSPRINT DD SYSOUT=* //SYSUT1 DD DISP=SHR, REMOTE STAGING DATA SET FOR SCRIPT // DSN=&ZZNATCMD //SYSUT2 DD DSN=PUBLIC.MORMI08.NATCMDT, // DISP=(,CATLG), // SPACE=(CYL,(1,1),RLSE), // UNIT=SYSDA, // DCB=(RECFM=FBA,LRECL=81) //SYSIN DD * PUNCH TYPORG=PO //* //******************************************************************** //* REMOVE LEADING CONTROL CHARACTER AND SEPARATOR LINES //******************************************************************** //SCR030 EXEC PGM=SORT //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //REPORT1 DD SYSOUT=* //SORTIN DD DISP=SHR,DSN=PUBLIC.MORMI08.NATCMDT //SORTOUT DD DSN=PUBLIC.MORMI08.NATCMDS, // DISP=(,CATLG), // UNIT=SYSDA, // SPACE=(CYL,(1,1)), // DCB=(RECFM=FB,LRECL=80) //SORTWK01 DD UNIT=DISK,SPACE=(CYL,(5,5)) //SORTWK02 DD UNIT=DISK,SPACE=(CYL,(5,5)) //SORTWK03 DD UNIT=DISK,SPACE=(CYL,(5,5)) //SYSIN DD * OMIT COND=((2,13,CH,EQ,C'MEMBER NAME ')) SORT FIELDS=COPY INREC FIELDS=(1:2,80) //* //GENER1 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SYSUT1 DD DATA,DLM='$$' &RJOBCARDS $$ // DD DISP=SHR,DSN=PUBLIC.MORMI08.NATCMDS //SYSUT2 DD SYSOUT=(A,INTRDR) @ENDIF
|
Copyright © 2014 CA Technologies.
All rights reserved.
|
|