Ensuring XCOM SEND FILE completes before dependent job can start
search cancel

Ensuring XCOM SEND FILE completes before dependent job can start

book

Article ID: 279246

calendar_today

Updated On:

Products

XCOM Data Transport - z/OS XCOM Data Transport

Issue/Introduction

An XCOM 'TYPE=SCHEDULE' job on SYSA does a SEND file of dataset A.A to SYSB for further processing as dataset B.B.
As a result of the creation of B.B on SYSB, a second job BBB1 is "triggered" to run.

Periodically, due to the CPU Load on both systems, BBB1 fails on no data to process because dataset B.B is empty due to the job from SYSA not having completed.
(The Job Scheduler on SYSB monitors for the creation of dataset B.B, but, is unable to monitor the close of dataset B.B.)

How can we fix this problem?
If we were to add another job step that transfers another dataset e.g. A.A1 to B.B1, and change the trigger on SYSB to look for the allocation of dataset B.B1 (assumes the allocation of dataset B.B1 means the second step started and so the first step creating dataset B.B would have completed), will that always work?

Environment

XCOM Data Transport for z/OS

Resolution

1. The proposed extra job step will not help because these are TYPE=SCHEDULE transfers and the server will possibly kick both transfers off at the same time. 

2. To achieve the desired result set up an XTC job where the first transfer is the file transfer and once it is complete, it can then release a second transfer that does a SEND JOB to trigger job BBB1. Here is an example of what that would look like:

TYPE=SEND                        
LU=luname                      
CKPT=0                           
FILEOPT=REPLACE                  
FILETYPE=FILE                    
LFILE=localfile    
FILE=remotefile
USERID=              
PASSWORD=       
XTCNET=JOB1                     
XTCJOB=XFER1                     
XTCGOODREL=XFER2
XTCERRPURGE=XFER2                 
HOLD=NO                          
*                                
NEWXFER                          
TYPE=SEND                        
LU=luname                    
FILETYPE=JOB                    
LFILE=localfile       
XTCNET=JOB1                     
XTCJOB=XFER2                     
HOLD=YES 


So, the first transfer is the actual SEND FILE data transfer, once it is good(XTCGOODREL) it will release the second transfer, in this case a SEND JOB.
In the dataset specified on the LFILE=, have the JCL that should run job BBB1 once the data transfer is done. 

NOTE: The value for XTCNET has to match in both transfers as shown per the doc. page for Transfer Control (XTC) Parameters.