Sample Node Substitution
A user can have approximately 1000 remote locations. Often, you have files that need to be sent to each of the 1000 remote locations. Node substitution provides a way in which you can execute a single process to send files to different remote locations without updating the PROCESS statements whenever a new remote location is added or deleted.
The following table lists the token parameters that can be used in node substitution:
| Parameter | Description |
|---|---|
| %LLQ | Low-level qualifier |
| %LFILE | Local file name |
| %NOHLQ | Local file name without the high-level qualifier |
| %Q01 - %Q22 | Individual z/OS file qualifiers |
The NODE parameter can use any of these token parameters. However, the token is restricted to 8 bytes or less. If the token contains more than 8 characters, the first 8 characters are substituted.
The RFILE parameter can also use any of these token parameters. The length of the remote file cannot exceed 255 characters.
User ID and Password Processing
In node substitution, you can generate the user ID and password in one of the following ways:
- RUSER and RPASS parameters in the PROCESS statement
-
RUSER=*PROFILE- With a profile for each node definition
Profile NODE=*ALLNODEto set the user ID and password the same for all nodes
WAIT Parameter Processing
The following explanation shows how the WAIT parameter works for send directory transfers:
-
When the NODE parameter does not have a token:
Single-thread the transfers.
WAIT=YES: The batch process is completed after all transfers are completed.WAIT=NO: The batch process is completed after the send directory transfer is queued.
-
When the NODE parameter has a token:
WAIT=YES: Single-thread the transfers (Queue Transfers withWAIT=YES). The batch process is completed after all transfers are completed.WAIT=NO: Submit the transfer without waiting for the transfer to complete. (Queue Transfers withWAIT=NO). The batch process is completed after the send directory transfer is queued.
Examples
The following two examples show sample commands of node substitution.
Example 1:
//REMLOC JOB NOTIFY=&SYSUID
//*
//*
//EXEC0000 EXEC PGM=OSIUB000,
// PARM='SERVER=FUSION'
//*
//STEPLIB DD DISP=SHR,DSN=FUSION.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSTRACE DD DUMMY
//SYSIN DD *
PROCESS,REMLOC,TRANSFER,SEND
TRANS_TYPE=FILE
DSN=COMPANY.ACCT.S*
RFILE=C:\COMPANY\INCOMING\%NOHLQ.TXT
EFFECT=CN
NODE=%LLQ
RUSER=*PROFILE
WAIT=NO
/*
Example 2:
Assume that the following files exist:
PROD.ACCT.NYNODE.TAX2008.DATA
PROD.ACCT.CHNODE.TAX2008.DATA
PROD.ACCT.LANODE.TAX2008.DATA
PROD.ACCT.ATNODE.TAX2008.DATA
PROD.ACCT.PHNODE.TAX2008.DATA
Issue the following PROCESS statements:
NODE=%Q03 LFILE=PROD.ACCT.** RFILE=/acct/data/%Q04.%Q05
The following five transfers will be scheduled:
NODE=NYNODE LFILE=PROD.ACCT.NYNODE.TAX2008.DATA RFILE=/acct/data/TAX2008.DATA
NODE=CHNODE LFILE=PROD.ACCT.CHNODE.TAX2008.DATA RFILE=/acct/data/TAX2008.DATA
NODE=LANODE LFILE=PROD.ACCT.LANODE.TAX2008.DATA RFILE=/acct/data/TAX2008.DATA
NODE=ATNODE LFILE=PROD.ACCT.ATNODE.TAX2008.DATA RFILE=/acct/data/TAX2008.DATA
NODE=PHNODE LFILE=PROD.ACCT.PHNODE.TAX2008.DATA RFILE=/acct/data/TAX2008.DATA