Information Systems:EOMASW

From uniWIKI
Revision as of 12:34, 9 February 2016 by Sheilav (talk | contribs)
Jump to navigation Jump to search
/* CALCULATE CLOSING PERIOD AS YESTERDAY'S PERIOD (TODAY MINUS 1)         */ 
/* ASW doesn't handle February 29 properly, so minus 2 instead            */
                                                                               
             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)                           
                                                                               
/* DO A 'DEMAND ADJUSTMENT' OF PROMO SALES FOR LAST MONTH                 */ 
                                                                               
             CALL       PGM(PXCIU356) PARM(&PERIODC &DATEC)                    
             PXDEMAND                                                          
                                                                                
/* 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)                     
                                                                                
/* PERIOD ROLLOVER                                                        */  
                                                                                
             RTVASWPAR  PGM(ASGC032) PAID(MONTHROLL) USER(*ALL)                 
             EXCASWPGM  PGM(ASGC032) PARM(Y) DTA('N          +                  
                          NNY      *DEVTYPE  +                      
                          N                                           -       
       ')                                                                     
             CHGASWCOM  COMPANY(VA)                                           
                                                                              
/* PRINT INVENTORY VALUE                                                  */
                                                                              
             OVRPRTF    FILE(QPQUPRFIL) OUTQ(ELAHO) SAVE(*YES)                
             RUNQRY     QRY(STOCKST03A)                                       
             DLTOVR     FILE(QPQUPRFIL)                                       
                                                                                
/* 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)                                   
                                                                               
/* 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)      
                                                                                 
/* PRINT SUPPLIER INVOICE VARIANCE ANALYSIS LIST/DIS                      */  
                                                                                
             RTVASWPAR  PGM(GCFC233) PAID(TEST) USER(*ALL)                      
             CHGASWLDA  VALUE(&PERIODC) TYPE(*CHAR) STARTPOS(41) +              
                          POSITIONS(6)                                          
             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)                                          
             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)                                   
                                                                               
/* INVENTORY CALCULATIONS                                                 */ 
                                     
             RTVASWPAR  PGM(INVC401) PAID(ICCALCS) USER(*ALL)                 
             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)                           
                RTVASWPAR  PGM(DMC971) PAID(ENDOFYEAR) USER(*ALL)              
                EXCASWPGM  PGM(DMC971) PARM(N)                                 
              ENDDO                                                             
                                                                               
/* TAKE COPY OF SROSRO IF THIS IS CALENDAR YEAR END                       */
                                                                             
             IF         COND(&MONTH = '12') THEN(DO)                         
                CHGVAR     VAR(&FILENAME) VALUE('SROSRO' || &YEAR)           
                CPYF       FROMFILE(SROSRO) +                                 
                             TOFILE(UP1480BFVA/&FILENAME) CRTFILE(*YES)       
                CHGVAR     VAR(&FILENAME) VALUE('SRBSRO' || &YEAR)           
                CRTLF      FILE(UP1480BFVA/&FILENAME) +                      
                             SRCFILE(XX2480BP/QDDSSRC) SRCMBR(&FILENAME)     
              ENDDO                                                           
                                                                             
/* 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)      
                CHGVAR     VAR(&FILENAME) VALUE('SRBSROF' || +              
                            %SST(&YEAR 3 2))                                
                CRTLF      FILE(UP1480BFVA/&FILENAME) +                     
                             SRCFILE(XX2480BP/QDDSSRC) SRCMBR(&FILENAME)    
              ENDDO                                                          
                                                                            
/* TAKE COPY OF GOODS RECEIVING FILE FOR RECONCILING                     */
                                                                            
             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)                                          
                                                                                
/*ADD ONHANDS TO STATISTICS FILE                                   */
                                                                               
             CALL       PGM(BLDPERONH) PARM('      ')                          
                                                                               
/* RUN SURPLUS STOCK REPORT                                               */ 
                                                                               
             RUNQRY     QRY(STOCKST06X) QRYFILE((*LIBL/SROPRG) +               
                          (*LIBL/SROSRO))                                      
                                                                               
/* FTP INVOICE DETAIL FOR ENDING MONTH TO PHARMASAVE               */ 
                                                                               
             SBMJOB     CMD(CALL PGM(PHAFTP02CL) PARM('00000000' +             
                          '00000000')) USER(PHARMASAVE)                        
                                                                               
/* BUILD ORDER STATISTICS FILE (SUMORDCST) FOR IN_ORDER01          */ 
                                                                               
             SBMJOB     CMD(CALL PGM(BLDSUMORD) PARM(&CCYYMMA))                
                                                                               
/* FTP SALES FOR ENDING MONTH TO IMS                               */ 
                                                                               
             SBMJOB     CMD(CALL PGM(TSADUMPA)) USER(IMSTSA)                   
                                                                               
/* DELETE OLD TRANSACTIONS                                         */ 
                                                                               
             CALL       PGM(PURGE01)                                           
             MONMSG     MSGID(CPF0000)                                         
                                                                               
/* DELETE EDI SPOOL FILES OVER TWO MONTHS OLD                      */ 
                                                                               
             CALL       PGM(OUTQCLREDI)                                        
             MONMSG     MSGID(CPF0000)