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.

Note: To use node substitution, you must define the node where the file is to be sent.

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 user ID and password by using one of the following ways:

  • Specify the RUSER and RPASS parameters in the PROCESS statement
  • Specify RUSER=*PROFILE

    • With a profile for each node definition
    • Profile NODE=*ALLNODE to 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 with WAIT=YES). The batch process is completed after all transfers are completed.
    • WAIT=NO: multi-thread the transfers (Queue Transfers with WAIT=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