Information Systems:EOMASW

From uniWIKI
Revision as of 12:07, 9 February 2016 by Sheilav (talk | contribs) (Created page with " →‎CALCULATE CLOSING PERIOD AS YESTERDAY'S PERIOD (TODAY MINUS 1): /* UWD2...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
  /* CALCULATE CLOSING PERIOD AS YESTERDAY'S PERIOD (TODAY MINUS 1)         */ 
                                                                               
 /* UWD2     CHGASWLDA  TYPE(*DATDZ) RELVAL(-1) STARTPOS(001)               */ 
 /* UWD2 */  CHGASWLDA  TYPE(*DATDZ) RELVAL(-2) STARTPOS(001)                  
             RTVDTAARA  DTAARA(*LDA (1 8)) RTNVAR(&DATEC)                      
             CHGVAR     VAR(&DATE) VALUE(&DATEC)                               
             GETPERIOD  DATE(&DATE) PERIOD(&PERIOD)                            
             CHGVAR     VAR(&PERIODC) VALUE(&PERIOD)                           
                                                                               
             LOGENTRY   LEVEL1(TEST) LEVEL2(PERIODC) +                         
                          LEVEL3(&PERIODC) BEGEND(B) FROMPG(EOMASW) +          
                          CLASS(ASW)                                           
             LOGENTRY   LEVEL1(TEST) LEVEL2(DATEC) LEVEL3(&DATEC) +            
                          BEGEND(B) FROMPG(EOMASW) CLASS(ASW)                  
                                                                               
  /* DO A 'DEMAND ADJUSTMENT' OF PROMO SALES FOR LAST MONTH                 */ 
                                                                               
 /* UWD1 */  CALL       PGM(PXCIU356) PARM(&PERIODC &DATEC)                    
 /* UWD1 */  PXDEMAND                                                          
             LOGENTRY   LEVEL1(TEST) LEVEL2(STEPA) BEGEND(B) +    
                          FROMPG(EOMASW) CLASS(ASW)                             
                                                                                
  /* CALCULATE CLOSING MONTH, AND 6 MONTHS AGO FOR ITEM SEGMENTATION        */  
                                                                                
             CHGASWLDA  TYPE(*DATDZ) RELVAL(-1) STARTPOS(001)                   
             RTVDTAARA  DTAARA(*LDA (1 6)) RTNVAR(&CCYYMMA)                     
             RTVDTAARA  DTAARA(*LDA (5 2)) RTNVAR(&MONTH)                       
             RTVDTAARA  DTAARA(*LDA (1 4)) RTNVAR(&YEAR)                        
             CHGASWLDA  TYPE(*DATDZ) RELVAL(-170) STARTPOS(001)                 
             RTVDTAARA  DTAARA(*LDA (1 6)) RTNVAR(&CCYYMMB)                     
             LOGENTRY   LEVEL1(TEST) LEVEL2(STEPB) BEGEND(B) +                  
                          FROMPG(EOMASW) CLASS(ASW)                             
                                                                                
  /* PERIOD ROLLOVER - EACH COMPANY SEPARATELY                              */  
                                                                                
/* UWD7      RTVASWPAR  PGM(ASGC032) PAID(MONTHENDVA) USER(*ALL)         */     
/* UWD7 */   RTVASWPAR  PGM(ASGC032) PAID(MONTHROLL) USER(*ALL)                 
                                                                                
             EXCASWPGM  PGM(ASGC032) PARM(Y) DTA('N          +                  
                          NNY      *DEVTYPE  +                      
                          N                                           -       
       ')                                                                     
/* UWD7 */   CHGASWCOM  COMPANY(VA)                                           
             LOGENTRY   LEVEL1(TEST) LEVEL2(STEPC) BEGEND(B) +                
                          FROMPG(EOMASW) CLASS(ASW)                           
                                                                              
/*           RTVASWPAR  PGM(ASGC032) PAID(MONTHENDPL) USER(*ALL)          */  
/*           EXCASWPGM  PGM(ASGC032) PARM(Y) DTA('N          +            */  
/*                        NNY      *DEVTYPE  +                            */  
/*                        N                                           -   */  
/*     ')                                                                 */  
/*           LOGENTRY   LEVEL1(TEST) LEVEL2(STEPD) BEGEND(B) +            */  
/*                        FROMPG(EOMASW) CLASS(ASW)                       */  
                                                                              
  /* PRINT INVENTORY VALUE                                                  */
                                                                              
             OVRPRTF    FILE(QPQUPRFIL) OUTQ(ELAHO) SAVE(*YES)                
             RUNQRY     QRY(STOCKST03A)                                       
             DLTOVR     FILE(QPQUPRFIL)                                       
             LOGENTRY   LEVEL1(TEST) LEVEL2(STEPE) BEGEND(B) +     
                          FROMPG(EOMASW) CLASS(ASW)                            
                                                                               
  /* PRINT STOCK VALUATION - AVERAGE COST                                   */ 
                                                                               
             RTVASWPAR  PGM(DMC604) PAID(MONTHEND1) USER(*ALL)                 
             EXCASWPGM  PGM(DMC604) PARM(N)                                    
                                                                               
             RTVASWPAR  PGM(DMC604) PAID(MONTHEND2) USER(*ALL)                 
             EXCASWPGM  PGM(DMC604) PARM(N)                                    
                                                                               
  /* PRINT SUPPLIER INVOICE MATCHING                                        */ 
                                                                               
             RTVASWPAR  PGM(GCFC231) PAID(MONTHEND) USER(*ALL)                 
             EXCASWPGM  PGM(GCFC231) PARM(N)                                   
                                                                               
  /* UWD4 START - CORRECT DATE RANGE FOR VARIANCE ANALYSIS LISTINGS         */ 
                                                                               
             CHGASWLDA  TYPE(*DATDZ) RELVAL(-1) STARTPOS(001)                  
             RTVDTAARA  DTAARA(*LDA (1 8)) RTNVAR(&DATEC)                      
             CALL       PGM(EOMASW01) PARM(&DATEC)      
                                                                                
  /* UWD4 END                                                               */  
                                                                                
  /* PRINT SUPPLIER INVOICE VARIANCE ANALYSIS LIST/DIS                      */  
                                                                                
/*           RTVASWPAR  PGM(GCFC233) PAID(MONTHEND) USER(*ALL)           */     
             RTVASWPAR  PGM(GCFC233) PAID(TEST) USER(*ALL)                      
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(41) +              
                          POSITIONS(6)                                          
/* UWD3      CHGDTAARA  DTAARA(*LDA (860 6)) VALUE(&PERIODC)              */    
             EXCASWPGM  PGM(GCFC233) PARM(N)                                    
                                                                                
  /* PRINT SUPPLIER INVOICE VARIANCE ANALYSIS LIST/FIN                      */  
                                                                                
             RTVASWPAR  PGM(GCFC235) PAID(MONTHEND2) USER(*ALL)                 
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(41) +              
                          POSITIONS(6)                                          
  /* UWD3    CHGDTAARA  DTAARA(*LDA (860 6)) VALUE(&PERIODC)                  */
             EXCASWPGM  PGM(GCFC235) PARM(N)                                    
                                             
  /* PRINT A/R RECONCILIATION                                               */ 
                                                                               
             RTVASWPAR  PGM(FSC291) PAID(MONTHENDAR) USER(*ALL)                
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(091) +            
                          POSITIONS(6)                                         
             EXCASWPGM  PGM(FSC291) PARM(N)                                    
                                                                               
  /* PRINT A/P RECONCILIATION                                               */ 
                                                                               
             RTVASWPAR  PGM(FSC291) PAID(MONTHEND) USER(*ALL)                  
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(091) +            
                          POSITIONS(6)                                         
             EXCASWPGM  PGM(FSC291) PARM(N)                                    
                                                                               
  /* PRINT A/P BALANCE                                                      */ 
                                                                               
             RTVASWPAR  PGM(FLC040) PAID(MONTHENDAP) USER(*ALL)                
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(041) +            
                          POSITIONS(6)                                         
             EXCASWPGM  PGM(FLC040) PARM(N)                                          
                                                                               
  /* PRINT A/R BALANCE                                                      */ 
                                                                               
             RTVASWPAR  PGM(FKC040) PAID(MONTHENDAR) USER(*ALL)                
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(041) +            
                          POSITIONS(6)                                         
             EXCASWPGM  PGM(FKC040) PARM(N)                                    
                                                                               
  /* ACTIVE FORECAST PERIODS                                                */ 
                                                                               
             RTVASWPAR  PGM(INVC522) PAID(ACTFOREPER) USER(*ALL)               
             EXCASWPGM  PGM(INVC522) PARM(N)                                   
                                                                               
  /* DO A 'DEMAND ADJUSTMENT' OF PROMO SALES FOR LAST MONTH                 */ 
                                                                               
  /* UWD1    CALL       PGM(PXCIU356) PARM(&PERIODC &DATEC)   */               
  /* UWD1    PXDEMAND                                         */               
                                                                               
  /* INVENTORY CALCULATIONS                                                 */ 
                                     
             RTVASWPAR  PGM(INVC401) PAID(ICCALCS) USER(*ALL)                 
/* UWD3      CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(226) +      */   
/* UWD3 */   CHGASWLDA  VALUE(&CCYYMMA) TYPE(*CHAR) STARTPOS(226) +           
                          POSITIONS(6)                                        
             EXCASWPGM  PGM(INVC401) PARM(N)                                  
                                                                              
  /* AVERAGE STOCK LEVEL                                                    */
                                                                              
             RTVASWPAR  PGM(INVC520) PAID(AVERSTOCK) USER(*ALL)               
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(226) +           
                          POSITIONS(6)                                        
             EXCASWPGM  PGM(INVC520) PARM(N)                                  
                                                                              
  /* INVENTORY SEGMENTATION                                                 */
                                                                              
             RTVASWPAR  PGM(INVC441) PAID(UPDSEGCODE) USER(*ALL)              
             CHGASWLDA  VALUE(&CCYYMMB) TYPE(*CHAR) STARTPOS(25) +            
                          POSITIONS(6)                                        
             CHGASWLDA  VALUE(&CCYYMMA) TYPE(*CHAR) STARTPOS(31) +            
                          POSITIONS(6)                                         
             EXCASWPGM  PGM(INVC441) PARM(N)                                   
                                                                               
  /* RUN QUERY OF ALL UNMATCHED (UNINVOICED) P.O. RECEIPTS                  */ 
                                                                               
             RUNQRY     QRY(FINUNMATCX)                                        
                                                                               
  /* RUN 'TURN OF THE YEAR' FOR DIS IF THIS IS END OF JANUARY               */ 
                                                                               
             IF         COND(&MONTH = '01') THEN(DO)                           
                LOGENTRY   LEVEL1(YEARLY) LEVEL2(ASW) +                        
                             LEVEL3(PROCESSING) BEGEND(B) +                    
                             FROMPG(EOMASW) CLASS(ASW)                         
                RTVASWPAR  PGM(DMC971) PAID(ENDOFYEAR) USER(*ALL)              
                EXCASWPGM  PGM(DMC971) PARM(N)                                 
                LOGENTRY   LEVEL1(YEARLY) LEVEL2(ASW) +                        
                             LEVEL3(PROCESSING) BEGEND(E) +                    
                             FROMPG(EOMASW) CLASS(ASW)                         
             ENDDO                                                             
                                                                               
  /* UWD5 - TAKE COPY OF SROSRO IF THIS IS CALENDAR YEAR END                */                                                                    
                                                                             
             IF         COND(&MONTH = '12') THEN(DO)                         
                CHGVAR     VAR(&FILENAME) VALUE('SROSRO' || &YEAR)           
  /*            CRTDUPOBJ  OBJ(SROSRO) FROMLIB(*LIBL) OBJTYPE(*FILE) +    */ 
  /*                         NEWOBJ(&FILENAME) DATA(*YES)                 */ 
                                                                             
               CPYF       FROMFILE(SROSRO) +                                 
                            TOFILE(UP1480BFVA/&FILENAME) CRTFILE(*YES)       
                                                                             
               MONMSG     MSGID(CPF0000)                                     
                                                                             
                CHGVAR     VAR(&FILENAME) VALUE('SRBSRO' || &YEAR)           
                CRTLF      FILE(UP1480BFVA/&FILENAME) +                      
                             SRCFILE(XX2480BP/QDDSSRC) SRCMBR(&FILENAME)     
                MONMSG     MSGID(CPF0000)                                    
             ENDDO                                                           
                                                                             
  /* UWDF - TAKE COPY OF SROSRO IF THIS IS FISCAL YEAR END                */ 
                                                                             
             IF         COND(&MONTH = '01') THEN(DO)                                                                     
                CHGVAR     VAR(&FILENAME) VALUE('SROSROF' || +              
                            %SST(&YEAR 3 2))                                
                CPYF       FROMFILE(SROSRO) +                               
                            TOFILE(UP1480BFVA/&FILENAME) CRTFILE(*YES)      
                MONMSG     MSGID(CPF0000)                                   
                CHGVAR     VAR(&FILENAME) VALUE('SRBSROF' || +              
                            %SST(&YEAR 3 2))                                
                CRTLF      FILE(UP1480BFVA/&FILENAME) +                     
                             SRCFILE(XX2480BP/QDDSSRC) SRCMBR(&FILENAME)    
                MONMSG     MSGID(CPF0000)                                   
             ENDDO                                                          
                                                                            
  /* TAKE COPY OF GOODS RECEIVING FILE FOR RECONCILIATING                 */
                                                                            
             CHGVAR     VAR(&FILENAME) VALUE('SROGRT' || +                  
                          %SST(&PERIODC 3 4))                               
             CPYF       FROMFILE(SROGRT) +                                  
                          TOFILE(UP1480BFVA/&FILENAME) CRTFILE(*YES)        
             MONMSG     MSGID(CPF0000)                                      
                                                                                              
  /* RUN PROGRAM TO CREATE WORK FILE OF OUT OF BALANCE PO'S               */   
                                                                               
             CALL       PGM(BAL001CL)                                          
             MONMSG     MSGID(CPF0000)                                         
                                                                               
  /* UWDC - ADD ONHANDS TO STATISTICS FILE                                   */
                                                                               
             CALL       PGM(BLDPERONH) PARM('      ')                          
             MONMSG     MSGID(CPF0000)                                         
                                                                               
  /* RUN SURPLUS STOCK REPORT                                               */ 
                                                                               
             RUNQRY     QRY(STOCKST06X) QRYFILE((*LIBL/SROPRG) +               
                          (*LIBL/SROSRO))                                      
                                                                               
  /* UWD9 - FTP INVOICE DETAIL FOR ENDING MONTH TO PHARMASAVE               */ 
                                                                               
             SBMJOB     CMD(CALL PGM(PHAFTP02CL) PARM('00000000' +             
                          '00000000')) USER(PHARMASAVE)                        
                                                                               
  /* UWDA - BUILD ORDER STATISTICS FILE (SUMORDCST) FOR IN_ORDER01          */ 
                                                                               
             SBMJOB     CMD(CALL PGM(BLDSUMORD) PARM(&CCYYMMA))                
                                                                               
  /* UWDD - FTP SALES FOR ENDING MONTH TO IMS                               */ 
                                                                               
             SBMJOB     CMD(CALL PGM(TSADUMPA)) USER(IMSTSA)                   
                                                                               
  /* UWD6 - DELETE OLD TRANSACTIONS                                         */ 
                                                                               
             CALL       PGM(PURGE01)                                           
             MONMSG     MSGID(CPF0000)                                         
                                                                               
  /* UWDE - DELETE EDI SPOOL FILES OVER TWO MONTHS OLD                      */ 
                                                                               
             CALL       PGM(OUTQCLREDI)                                        
             MONMSG     MSGID(CPF0000)                                         
                                                                               
             LOGENTRY   LEVEL1(MONTHLY) LEVEL2(ASW) +                          
                          LEVEL3(PROCESSING) BEGEND(E) +                       
                          FROMPG(EOMASW) CLASS(ASW)