View previous topic :: View next topic
|
Author |
Message |
MSecorsky
New User
Joined: 26 Sep 2014 Posts: 11 Location: USA
|
|
|
|
Almost works. No errors, but SMTPHDR2 isn't getting populated.
Code: |
//STEP99A EXEC PGM=IKJEFT01
//FILENAME DD DSN=&SFILE.,DISP=SHR
//OUTPUTDD DD DSN=DEVDIT.ACP.DATA.PIP49112.SMTPHDR2,
// DISP=SHR
//SYSOUT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
/* REXX */
X = LISTDSI("FILENAME FILE")
PUSH " FILENAME = '"STRIP(SYSDSNAME)"'"
"EXECIO DISKW 1 OUTPUTDD ( FINIS"
EXIT
//* |
|
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
I ran this before I submitted it. It works perfect for me.
The /* REXX */ is NOT required. When IRXJCL is using SYSEXEC, REXX is implied.
Did you run this EXACTLY as I had it?
Please show your JCL and your error. |
|
Back to top |
|
|
MSecorsky
New User
Joined: 26 Sep 2014 Posts: 11 Location: USA
|
|
|
|
Welcome back Dave. OK, here's the JCL:
Code: |
//SYMBOLIC SET SFILE=&SFILE
//GENER0 EXEC PGM=IEBGENER
//SYSPRINT DD DUMMY
//SYSIN DD DUMMY
//SYSUT1 DD *
ARG DATAIN
QUEUE 'FILENAME='||DATAIN
"EXECIO 1 DISKW OUTFILE (OPEN FINIS)"
EXIT
/*
//SYSUT2 DD DSN=&&TEMP0(WRITE),UNIT=SYSALLDA,
// SPACE=(TRK,(1,1,2),RLSE),
// DISP=(NEW,PASS),DCB=(LRECL=80,
// BLKSIZE=1600,DSORG=PO,RECFM=FB)
//WRITE2 EXEC PGM=IRXJCL,PARM='WRITE &SFILE'
//SYSEXEC DD DSN=&&TEMP0,DISP=SHR
//SYSTSPRT DD SYSOUT=Z
//OUTFILE DD DSN=DEVDIT.ACP.DATA.PIP49112.SMTPHDR2,
// DISP=(NEW,CATLG,CATLG),
// UNIT=SYSDA,
// DCB=(BLKSIZE=0,LRECL=80,RECFM=FB),
// SPACE=(TRK,(1,1),RLSE)
//* |
Placed right before the 99M step. Here's the error it's tossing...
Code: |
IEF373I STEP/GENER0 /START 2014274.1354
IEF032I STEP/GENER0 /STOP 2014274.1354
CPU: 0 HR 00 MIN 00.00 SEC SRB: 0 HR 00 MIN 00.00 SEC
VIRT: 72K SYS: 264K EXT: 8K SYS: 10248K
IEF236I ALLOC. FOR DEVY984W WRITE2
IGD103I SMS ALLOCATED TO DDNAME SYSEXEC
IEF237I JES2 ALLOCATED TO SYSTSPRT
IGD101I SMS ALLOCATED TO DDNAME (OUTFILE )
DSN (DEVDIT.ACP.DATA.PIP49112.SMTPHDR2 )
STORCLAS (INVTSEQ) MGMTCLAS (EXP006M) DATACLAS (INVTSEQ)
VOL SER NOS= APDI01
IRX0110I The REXX exec cannot be interpreted.
IRX0112I The REXX exec cannot be loaded.
IEF142I DEVY984W WRITE2 - STEP WAS EXECUTED - COND CODE 0020
IGD106I SYS14274.T135454.RA000.DEVY984W.TEMP0.H05 PASSED, DDNAME=SYSEXEC
IEF285I DEVY984.DEVY984W.J0098397.D0000109.? SYSOUT
IGD104I DEVDIT.ACP.DATA.PIP49112.SMTPHDR2 RETAINED, DDNAME=OUTFILE |
|
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
Try changing the SYSUT2 to a permanent PDS like:
Code: |
//SYSUT2 DD DSN=TEMP.PDS(WRITE),UNIT=SYSALLDA,
// SPACE=(TRK,(1,1,2),RLSE),
// DISP=(NEW,CATLG),DCB=(LRECL=80,
// BLKSIZE=1600,DSORG=PO,RECFM=FB) |
and the SYSEXEC to:
Code: |
//SYSEXEC DD DSN=TEMP.PDS,DISP=SHR |
Another thought....
What was the return code from the IEBGENER step?
Is the UNIT=SYSALLDA valid at your shop?
Another option is to skip the fancy instream the REXX stuff with IEBGENER all together.
Put the exec into a known REXX library, and run the WRITE2 step only. |
|
Back to top |
|
|
|
|