Submit a Process from UNIX to z/OS to Connect:Enterprise Using BATCHID
The following examples submit a Process from Connect:Direct® for UNIX to Connect:Direct for z/OS®, which then executes an MB#ADD01 function on Connect:Enterprise®.
The following is the Connect:Direct for UNIX Process:
|
The following is the z/OS Process called by the UNIX Process. This Process performs an MB#ADD01 on Connect:Enterprise:
MB#ADD01 PROCESS SNODE=CD.OS390 -
&NOTIFY=' ' /* Notify nobody */ -
&FROMDSN='''FROM.DSN.NAME''' /* DATA SOURCE FILE NAME */ -
&FILETYP=TEXT /* DATA SOURCE FILE TYPE */ -
&PROFDSN='$hlq.CD.PROFILE' /* PROFILE DSN */ -
&PROFMEM=SUBADD01 /* EXTRACT PROFILE MEMBER */ -
&USER=%USER /* ORIGINATOR ID */ -
&SEQ=%NUM1 /* UNIQUE NUMBER */ -
&RMTID=RMTID /* RDX BATCH RMTID */ -
&MBNAME=E100 /* RDX NAME */ -
&LOCAPPL=MBICO /* RDX LOCAL APPLID */ -
&MBAPPL=SBLDUB74 /* RDX APPLID */ -
&LOGMODE=TESTLU62 /* RDX LOG MODE TABLE */ -
&USERID=USERID /* RDX USERID */ -
&PASSWRD=PASS /* RDX PASSWORD */ -
&BATCHID=BATCH.ID /* RDX BATCH ID */ -
&BATCHNO=0 /* RDX BATCH NUMBER */ -
&BUFSIZE=0 /* VTAM BUFFER SIZE */
*
SYMBOL &HLQ1=\CD.\ || &RMTID
SYMBOL &SEQ1=\T\ || &SEQ
SYMBOL &ADSN=\&HLQ1\ || \.STOUT0.INFILE.\ || &SEQ1
SYMBOL &IDSN=\&HLQ1\ || \.STOUT0.SYSIN.\ || &SEQ1
SYMBOL &PDSN=\&HLQ1\ || \.STOUT0.SYSPRINT.\ || &SEQ1
SYMBOL &LDSN=\&HLQ1\ || \.STOUT0.LOGFILE.\ || &SEQ1
SYMBOL &SDSN=\&HLQ1\ || \.STOUT0.SNAPOUT.\ || &SEQ1
*
SYMBOL &BATCHID2=\'''\ || &BATCHID || \'''\
*
* COPY FILE FROM SOURCE NODE
*
MBA$COPY COPY FROM(SNODE DSN=&FROMDSN DISP=SHR) -
TO ( DSN=&ADSN DISP=(RPL,CATLG) -
TYPE=&FILETYP)
*
IF (MBA$COPY > 0) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, “&BATCHID2", -
MBA$COPY, &NOTIFY)) PNODE
EXIT
EIF
*
* CREATE THE TEMPORARY FILE FOR USE BY ADD
*
MBA$CREI RUN TASK (PGM=DMRTDYN -
PARM=(C'ALLOC', -
C" DSN=&IDSN" -
C' DISP=(NEW,CATLG)', -
C' SPACE=(TRK,(1,1))', -
C' DCB=(RECFM=FB,DSORG=PS,LRECL=80,BLKSIZE=800)', -
C'UNIT=SYSDA', -
F'-1', -
C'UNALLOC', -
C" DSN=&IDSN")) PNODE
*
IF (MBA$CREI > 0) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$CREI, &NOTIFY)) PNODE
EXIT
EIF
*
MBA$CREP RUN TASK (PGM=DMRTDYN -
PARM=(C'ALLOC', -
C" DSN=&PDSN" -
C' DISP=(NEW,CATLG)', -
C' SPACE=(TRK,(1,1))', -
C' DCB=(RECFM=FBA,DSORG=PS,LRECL=133,BLKSIZE=2660)', -
C'UNIT=SYSDA', -
F'-1', -
C'UNALLOC', -
C" DSN=&PDSN")) PNODE
*
IF (MBA$CREP > 0) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$CREP, &NOTIFY)) PNODE
/* GOTO MBA$DELI */
EXIT
EIF
*
MBA$CREL RUN TASK (PGM=DMRTDYN -
PARM=(C'ALLOC', -
C" DSN=&LDSN" -
C' DISP=(NEW,CATLG)', -
C' SPACE=(TRK,(1,1))', -
C' DCB=(RECFM=FB,DSORG=PS,LRECL=196,BLKSIZE=1960)', -
C'UNIT=SYSDA', -
F'-1', -
C'UNALLOC', -
C" DSN=&LDSN")) PNODE
*
IF (MBA$CREL > 0) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$CREL, &NOTIFY)) PNODE
/* GOTO MBA$DELP */
EXIT
EIF
*
MBA$CRES RUN TASK (PGM=DMRTDYN -
PARM=(C'ALLOC', -
C" DSN=&SDSN" -
C' DISP=(NEW,CATLG)', -
C' SPACE=(TRK,(1,1))', -
C' DCB=(RECFM=FB,DSORG=PS,LRECL=196,BLKSIZE=1960)', -
C'UNIT=SYSDA', -
F'-1', -
C'UNALLOC', -
C" DSN=&SDSN")) PNODE
*
IF (MBA$CRES > 0) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$CRES, &NOTIFY)) PNODE
/* GOTO MBA$DELP */
EXIT
EIF
*
* EXECUTE THE ADD TO CONNECT:Enterprise RDX
*
MBA$STO0 RUN TASK (PGM=DMSTOUT0, -
PARM=(C'ADD' -
C"&PROFDSN" -
C'&PROFMEM' -
C"&IDSN" -
C"&PDSN" -
C"&ADSN" -
C"&LDSN" -
C'&SDSN' -
C'&RMTID' -
C'&BATCHID2' -
C'&BATCHNO' -
C'&MBNAME' -
C'&LOCAPPL' -
C'&MBAPPL' -
C'&LOGMODE' -
C'&USERID' -
C'&PASSWRD' -
C'&BUFSIZE')) PNODE
*
IF (MBA$STO0 > 4) THEN
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, FAIL, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$STO0, &NOTIFY)) PNODE
ELSE
*
*
* NOTIFY ORIGINATOR OF SUCCESS
RUN TASK (PGM=DMIONOTE, -
PARM=(ADD, GOOD, "&FROMDSN", &RMTID, "&BATCHID2", -
MBA$STO0, &NOTIFY)) PNODE
EIF
*
* DELETE TEMPORARY FILES
* ...