zOs/JCL/PVSSTAT

//A540769L  JOB (CP00,KE50),TIME=NOLIMIT
//***MAIN CLASS=CMNA
//        SET LE=PVSP.RZ2.P0.PVSSTEU
//        SET MI=CH04
//*                            OUTPUT PDS VB
//        SET OUTV=A540769.PVS.STAT.SORTOUT
//E02     EXEC PGM=DFSORT,PARM='SIZE(MAX)'
//*                            OUTPUT PDS FB MAXRECL=120
//        SET OUT120=A540769.PVS.STAT.SORTOUL
//E02     EXEC PGM=DFSORT,PARM='SIZE(MAX)'
//SYSIN     DD DDNAME=STEUDOK               ==> RICHTIGE DD WAEHLEN
//***************************************************************
//*                                         MONATLICHE STEUERFILES
//*                                         NACH DOKID GRUPPIEREN
//SORTIN    DD DISP=SHR,DSN=&LE..&MI.01
//          DD DISP=SHR,DSN=&LE..&MI.02
//          DD DISP=SHR,DSN=&LE..&MI.03
//          DD DISP=SHR,DSN=&LE..&MI.04
//          DD DISP=SHR,DSN=&LE..&MI.05
//          DD DISP=SHR,DSN=&LE..&MI.06
//          DD DISP=SHR,DSN=&LE..&MI.07
//          DD DISP=SHR,DSN=&LE..&MI.08
//          DD DISP=SHR,DSN=&LE..&MI.09
//          DD DISP=SHR,DSN=&LE..&MI.10
//          DD DISP=SHR,DSN=&LE..&MI.11
//          DD DISP=SHR,DSN=&LE..&MI.12
//SORTOUT   DD DISP=SHR,DSN=&OUTV(RZ2&MI)
//STEUDOK   DD *
*    INPUT:  MONATLICH STEUERFILES, Z.B. PVSP.RZ2.P0.PVSSTEU.CH0504
*    OUTPUT: SORTIERT UND GROUPIERT NACH DOKUMENTID
*
*                            DOKUMENTEN-ID
*                            *        BUID
*                            *        *        RETCODE
*                            *        *        *
 INREC FIELDS=(1:C'RZ2 CH04',10:236,4,15:279,4,20:68,3,23:C'  ',
*
*              MARK P  NULL EXTEND
*              *       *          PAGES    MARK D  BINARY 1 FOR COUNT
*              *       *          *        *       *
               25:C'P',26:X'0000',28:401,2,30:C'D',31:X'00000001')
 SORT  FIELDS=(10,13,CH,A)
 SUM   FIELDS=(26,4,BI,31,4,BI)
//***************************************************************
//*                                         MONATLICHE STEUERFILES
//*                                         NACH DOKID UND DATUM GRUPP
//STEUDODA  DD *
*    INPUT:  MONATLICH STEUERFILES, Z.B. PVSP.RZ2.P0.PVSSTEU.CH0504
*    OUTPUT: SELEKTIERT WS80,
*            SORTIERT UND GRUPPIERT NACH DOKUMENTID UND DATUM
*
*                            DOKUMENTEN-ID
*                            *        BUID
*                            *        *        RETCODE
*                            *        *        *
 INREC FIELDS=(1:C'RZ2 LW05',10:236,4,15:279,4,20:68,3,23:C'  ',
*
*              MARK P  NULL EXTEND
*              *       *          PAGES    MARK D  BINARY 1 FOR COUNT
*              *       *          *        *       *
               25:C'P',26:X'0000',28:401,2,30:C'D',31:X'00000001',
*                          DATUM AUS FILE NAMEN
*                          *
               35:C'     ',40:22,6)
 INCLUDE COND=(236,4,CH,EQ,C'WS80')
 SORT  FIELDS=(10,4,CH,A,40,6,CH,A)
 SUM   FIELDS=(26,4,BI,31,4,BI)
//***************************************************************
//*                                         EXTRAKT VON TABLE TPV101A1
//*                                         NACH SENDUNG GRUPPIEREN
//*SORTIN   DD DISP=SHR,DSN=POSY.RZ2.P0.REO.TPV101A1.D05135.T150007
//*SORTOUT  DD DISP=SHR,DSN=&OUT120(PV101SEN)
//V101SEN   DD *
*    INPUT:  WOCHEN EXTRAKT VON TABLE TPV1010A1
*    OUTPUT: SORTIERT UND GROUPIERT NACH SENDUNG/JOB
*
*              CONTWORD
*              *
 INREC FIELDS=(1,4,
*              CONST         SIDJ    ORD=CIF  SENDUNG
*              *             *       *        *
               5:C'TPV101A1',14:93,4,19:43,40,59:177,4,
*              KDATUM    KZEIT
*              *         *
               65:189,10,75:199,8,
*
*              INFO      0-EXT       BLATT1    BIN 1 COUNT
*              *         *           *         *
               85:144,20,105:X'0000',107:219,2,109:X'00000001')
 OUTFIL OUTREC=(1:5,108,110:X'00000001',120:C'E'),VTOF
 INCLUDE COND=(192,7,CH,EQ,C'01.2005',AND,189,2,CH,LE,C'03',
               AND,150,9,CH,EQ,C'AVSWCOC5A')
 SORT  FIELDS=(14,4,CH,A,19,40,CH,A,59,4,CH,A)
 SUM   FIELDS=(105,4,BI,109,4,BI)
//***************************************************************
//*                                         OUTPUT VON V101SEN
//*                                         NACH EMPFÄNGER-CIF GRUPP.
//*SORTIN   DD DISP=SHR,DSN=&OUT120(PV101SEN)
//*SORTOUT  DD DISP=SHR,DSN=&OUT120(PV101CIF)
//SENDCIF   DD *
*    INPUT:  OUTPUT VON V101 SEN, GRUPPIERT NACH SENDUNG/JOB
*    OUTPUT: SORTIERT UND GRUPPIERT NACH EMPAENBER CIF/JOB
*
 SORT  FIELDS=(10,4,CH,A,15,40,CH,A)
 OUTREC FIELDS=(1,113,115:X'00000001',119:C'C2')
 SUM   FIELDS=(101,4,BI,105,4,BI,110,4,BI)
//***************************************************************
//*                                         OUTPUT VON SENDCIF
//*                                         NACH BLATT/SEND/DOKUS
//*SORTIN   DD DISP=SHR,DSN=&OUT120(PV101CIF)
//*SORTOUT  DD DISP=SHR,DSN=&OUT120(PV101BSD)
//CIFBSD    DD *
*    INPUT:  OUTPUT VON V101 SEN, GRUPPIERT NACH CIF/JOB
*    OUTPUT: SORTIERT UND GRUPPIERT NACH BLATT/SENDUNGEN/DOKUMENTE
*
*
 SORT  FIELDS=(101,4,CH,A,110,4,CH,A,105,4,CH,A)
 SUM   FIELDS=(115,4,BI)
//***************************************************************
//*                                         OUTPUT VON SENDCIF
//*                                         NACH BLATT/DOKUS
//*SORTIN   DD DISP=SHR,DSN=&OUT120(PV101CIF)
//*SORTOUT  DD DISP=SHR,DSN=&OUT120(PV101BLDO)
//CIFBLDO  DD *
*    INPUT:  OUTPUT VON V101 SEN, GRUPPIERT NACH CIF/JOB
*    OUTPUT: SORTIERT UND GRUPPIERT NACH BLATT/DOKUMENTE
*
*
 SORT  FIELDS=(101,4,CH,A,105,4,CH,A)
 SUM   FIELDS=(115,4,BI,110,4,BI)
//***************************************************************
//SORTMSG   DD SYSOUT=*
//SYSPRINT  DD SYSOUT=*
//SYSOUT    DD SYSOUT=*