//DTSDX148 PROC RUNTYPE='DELINQ' 00000010 //* 00001700 //*************************************************** 00001700 //* MATCH TDEC DELINQ WAGE W4 TRANSACTIONS TO REPORTS //*************************************************** 00001700 //* 00001700 //***************************************************************** //*** //***************************************************************** //* SORT TDEC DELINQ WAGE FILE //* THE PENDING FILE CONTAINS TDEC WAGE DATA WHEN NO REPORTS //* CAN BE FOUND ON DUTAS, IT WIL BE MERGED UNTIL REPORTS ARE FOUND //***************************************************************** //STEP0100 EXEC PGM=SORT,PARM='VLTEST=0', SORT BY BATCH/EMP/YRQ/SSN // COND=(0,LT) //SYSOUT DD SYSOUT=* //* //*ORTIN DD DSN=DOESTAX.&EXTNODE..TDECX154.DWAGE.&RUNTYPE.,DISP=SHR //SORTIN DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..PENDING, // DISP=SHR //SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(25,10),RLSE) //SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(25,10),RLSE) //SORTOUT DD DSN=&&TDECSRT1, // DISP=(NEW,PASS,DELETE), // UNIT=SYSDA, // SPACE=(CYL,(10,5),RLSE), // DCB=(RECFM=FB,LRECL=106,BLKSIZE=31800) //SYSIN DD DSN=DOESTAX.&LVLNODE..APPL.PARMLIB(DESSR420),DISP=SHR //* //***************************************************************** //* EDIT TDEC DELINQ WAGE FILE RETURN A CODE 3 WHEN FILE IS EMPTY //***************************************************************** //STEP0200 EXEC PGM=DESBD420, // PARM='&RUNTYPE.', // COND=(0,LT), // REGION=0M //SYSOUT DD SYSOUT=* //SYSABOUT DD SYSOUT=* //SYSABEND DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //* //DTSFMSTR INCLUDE MEMBER=DTSIMSTR //DTSFREF DD DSN=DOESTAX.&MSTNODE..VSAM.REF,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFWGH DD DSN=DOESTAX.&MSTNODE..VSAM.WGH,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFWG2 DD DSN=DOESTAX.&MSTNODE..VSAM.WG2,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFATC DD DSN=DOESTAX.&MSTNODE..VSAM.ATC,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFTDIN DD DSN=&&TDECSRT1,DISP=(OLD,PASS,DELETE) //* //DTSFTDO DD DSN=&&TDECEDIT, // DISP=(NEW,PASS,DELETE), // UNIT=SYSDA, // SPACE=(CYL,(10,5),RLSE), // DCB=(RECFM=FB,LRECL=106,BLKSIZE=31800) //* //*********************************************************** //* SEND EMAIL WHEN FILE IS EMPTY //*********************************************************** //STEP0300 EXEC PGM=IEBGENER,COND=(3,NE,STEP0200),REGION=4M //SYSPRINT DD SYSOUT=* //OUT1 OUTPUT DEST=U1003, // USERDATA=('TO: ROSA.MORALES@DC.GOV', // 'CC:GERALD.SMART@DC.GOV', // 'CC:NANCY.HUDAK@DC.GOV', // 'CC:ZARATH.LALPUTAN@DC.GOV', // 'SUBJECT: NO TDEC DELINQ WAGES ON MAINFRAME...........ZL1', // 'FILEDESC: TDEC DELINQ WAGE REPORT ', // 'FILENAME:NO_TDEC_DELINQ_WAGES.TXT') //SYSUT1 DD DSN=DOESTAX.&EXTNODE..TDEC.NOWAGES.TXT,DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.OUT1 //SYSIN DD DUMMY //* //*********************************************************** //STEP0310 EXEC PGM=IEBGENER,COND=(2,NE,STEP0200),REGION=4M //SYSPRINT DD SYSOUT=* //OUT1 OUTPUT DEST=U1003, // USERDATA=('TO:ROSA.MORALES@DC.GOV', // 'CC:GERALD.SMART@DC.GOV', // 'CC:NANCY.HUDAK@DC.GOV', // 'CC:ZARATH.LALPUTAN@DC.GOV', // 'SUBJECT: TDEC DELINQ WAGES ON MAINFRAME IN ERROR..ZL1', // 'FILEDESC: TDEC DELINQ WAGE REPORT ', // 'FILENAME:ERROR_TDEC_DELINQ_WAGES.TXT') //SYSUT1 DD DSN=DOESTAX.&EXTNODE..TDEC.NOWAGES.TXT,DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.OUT1 //SYSIN DD DUMMY //* //*********************************************************** //* FIND REPORTS, TO MATCH WAGES //*********************************************************** //STEP0400 EXEC PGM=DESBD422, // COND=(0,LT), // REGION=0M //SYSOUT DD SYSOUT=* //SYSABOUT DD SYSOUT=* //SYSABEND DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //* //DTSFMSTR INCLUDE MEMBER=DTSIMSTR //DTSFREF DD DSN=DOESTAX.&MSTNODE..VSAM.REF,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFWGH DD DSN=DOESTAX.&MSTNODE..VSAM.WGH,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFWG2 DD DSN=DOESTAX.&MSTNODE..VSAM.WG2,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFNAME DD DSN=DOESTAX.&MSTNODE..VSAM.WAGE.NAME,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFITM DD DSN=DOESTAX.DEVL.VSAM.ITM,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //DTSFATC DD DSN=DOESTAX.&MSTNODE..VSAM.ATC,DISP=SHR, // AMP=('BUFNI=5,BUFND=10') //* //DTSFTDIN DD DSN=&&TDECEDIT, // DISP=(OLD,DELETE,DELETE) //** //** WAGES IN W4 FORMAT PASSED TO DTSPDAY1 //DTSFW004 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..W4FILE, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // SPACE=(CYL,(20,5)), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=32000) //* //** BAD SSNS MERGED WITH DATA ON DTSPDAY1 //DTSFW153 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..X153, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // SPACE=(CYL,(20,5)), // DCB=(RECFM=FB,LRECL=93,BLKSIZE=9300) //* //** REPORTS FOUND ON ATC FILE PASSED TO DTSPDAY1 //DTSFW001 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..WAGE.BTC, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // SPACE=(CYL,(10,5)), // DCB=(RECFM=FB,LRECL=128,BLKSIZE=25600) //* //* TEMP PENDING FILE BUILT BE PGM //DTSFPEND DD DSN=DOESTAX.&EXTNODE..TDECX148.SRTPEND, // DISP=(NEW,PASS,DELETE), // SPACE=(CYL,(10,5)), // DCB=(RECFM=FB,LRECL=106,BLKSIZE=31800) //* //* MISSING REPORTS FILE EMAIL TO TAX STAFF //DTSFMISS DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..MISSRPTS, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // UNIT=SYSDA, // SPACE=(7800,(100,200),RLSE), // DCB=(RECFM=FB,LRECL=109,BLKSIZE=10900) //* //* TDEC WAGE NOT MATCHING UC30 WAGE REPORT - EMAILED //DTSFERR DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..WAGEEROR, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // UNIT=SYSDA, // SPACE=(12100,(100,200),RLSE), // DCB=(RECFM=FB,LRECL=126,BLKSIZE=12600) //* //* SUMARY COUNTS REPORT FOR WAGE RECORDS - EMAILED //DTSFCNT DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..SUMYCNTS, //** DISP=(NEW,CATLG,CATLG), // DISP=(OLD,KEEP,KEEP), // UNIT=SYSDA, // SPACE=(3700,(100,200),RLSE), // DCB=(RECFM=FB,LRECL=37,BLKSIZE=3700) //**************************************************** //** SAVE PENDING FILE FOR NEXT RUN //**************************************************** //STEP0500 EXEC PGM=SORT,PARM='VLTEST=0', REBUILD PENDING FILE // COND=(0,LT) //SYSOUT DD SYSOUT=* //* //SORTIN DD DSN=DOESTAX.&EXTNODE..TDECX148.SRTPEND, // DISP=(OLD,DELETE,DELETE) //SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(25,10),RLSE) //SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(25,10),RLSE) //SORTOUT DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..PENDING, //** DISP=(,CATLG,DELETE), // DISP=(SHR,KEEP,KEEP), // SPACE=(CYL,(10,5)), // DCB=(RECFM=FB,LRECL=106,BLKSIZE=31800) //SYSIN DD DSN=DOESTAX.&LVLNODE..APPL.PARMLIB(DTSSR414),DISP=SHR //* //**************************************************** //** EMAIL MISSING REPORT FILE //**************************************************** //STEP0600 EXEC PGM=IEBGENER, // COND=(0,LT), // REGION=4M //SYSPRINT DD SYSOUT=* //OUT1 OUTPUT DEST=U1003, // USERDATA=('TO:ROSA.MORALES@DC.GOV', // 'CC:GERALD.SMART@DC.GOV', // 'CC:NANCY.HUDAK@DC.GOV', // 'CC:ZARATH.LALPUTAN@DC.GOV', // 'SUBJECT: TDEC DELINQ MISSING REPORTS )', // 'FILEDESC: TDEC DELINQ MISSING REPORTS ', // 'FILENAME: TDEC.DELINQ.ERROR1.TXT') //SYSUT1 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..MISSRPTS, // DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.OUT1 //SYSIN DD DUMMY //SYSUDUMP DD SYSOUT=(*,,DUMP) //**************************************************** //** //STEP0700 EXEC PGM=IEBGENER, // COND=(0,LT), // REGION=4M //SYSPRINT DD SYSOUT=* //OUT1 OUTPUT DEST=U1003, // USERDATA=('TO:ROSA.MORALES@DC.GOV', // 'CC:GERALD.SMART@DC.GOV', // 'CC:NANCY.HUDAK@DC.GOV', // 'CC:ZARATH.LALPUTAN@DC.GOV', // 'SUBJECT: TDEC DELINQ WAGE DISCREPANCIES )', // 'FILEDESC: TDEC DELINQ WAGE DISCREPANCIES ', // 'FILENAME: TDEC.DELINQ.ERROR2.TXT') //SYSUT1 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..WAGEEROR, // DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.OUT1 //SYSIN DD DUMMY //SYSUDUMP DD SYSOUT=(*,,DUMP) //**************************************************** //** //STEP0800 EXEC PGM=IEBGENER, // COND=(0,LT), // REGION=4M //SYSPRINT DD SYSOUT=* //OUT1 OUTPUT DEST=U1003, // USERDATA=('TO:ROSA.MORALES@DC.GOV', // 'CC:GERALD.SMART@DC.GOV', // 'CC:NANCY.HUDAK@DC.GOV', // 'CC:ZARATH.LALPUTAN@DC.GOV', // 'SUBJECT: TDEC DELINQ COUNTS )', // 'FILEDESC: TDEC DELINQ COUNTS ', // 'FILENAME: TDEC.DELINQ.COUNTS.TXT') //SYSUT1 DD DSN=DOESTAX.&EXTNODE..TDECX148.&RUNTYPE..SUMYCNTS, // DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.OUT1 //SYSIN DD DUMMY //SYSUDUMP DD SYSOUT=(*,,DUMP) // //STEP0900 EXEC PGM=IDCAMS,COND=(0,LT) //** //******************************************************************** //*** COPY TDEC WAGE FILE TO ARCHIVE UPDATE FILE. //** //******************************************************************** //IFILE DD DSN=DOESTAX.CONV.TDECX154.DWAGE.&RUNTYPE.,DISP=SHR //** //OFILE DD DSN=DOESTAX.CONV.TDECX154.SAVED.&RUNTYPE.(+1), // DISP=(NEW,CATLG,DELETE), // UNIT=SYSDA,SPACE=(CYL,(05,5),RLSE), // DCB=(SYS3.MODEL,RECFM=FB,LRECL=106,BLKSIZE=31800) //SYSPRINT DD SYSOUT=(*) //SYSIN DD DSN=DOESTAX.DEVL.BEN.APPL.PARMLIB(DTSBREPO),DISP=SHR //******************************************************************** //*** DELETE TDEC DELINQ WAGE FILE(S). //** //******************************************************************** //STEP0910 EXEC PGM=IEFBR14,REGION=1024K,COND=(0,LT) //* //PDDELINQ DD DSN=DOESTAX.CONV.TDECX154.DWAGE.&RUNTYPE., // DISP=(OLD,DELETE,DELETE) //* //************************END PROC**************1/11/13 ZL1************