midrange.com code scratchpad
Name:
New CL version
Scriptlanguage:
Plain Text
Tabwidth:
4
Date:
01/25/2021 11:53:56 am
IP:
Logged
Description:
New CL version for report automation.
Code:
  1. PGM     PARM(&PREVDAY)
  2.  
  3. DCL             VAR(&PREVDAY)   TPE(*CHAR)   LEN(8)
  4. DCL             VAR(&CTCD)        TYPE(*CHAR)   LEN(2)     VALUE('AB')
  5. DCL              VAR(&GMAB)      TYPE (*CHAR)   LEN(4)    VALUE('HJKL')
  6. DCL              VAR(&BRNO)      TYPE(*DEC)         LEN(3)
  7. DCL             VAR(&L@CTCD)     TYPE(*CHAR)  LEN(2)      VALUE('AB')
  8. DCL             VAR(&L@GMAB)    TYPE(*CHAR)    LEN(4)    VALUE('HJKL')
  9. DCL             VAR(&L@BRNO)      TYPE(*CHAR)     LEN(3   0)
  10. DCL              VAR(&L@XMDT)     TYPE(*CHAR)       LEN(8)
  11. DCL              VAR(&P@BRNO)    TYPE(*CHAR)   LEN(3)
  12. DCL               VAR(&P@XMDT)   TYPE(*CHAR)    LEN(8)
  13.  
  14. DCL             VAR(&SELT1)            TYPE(*CHAR)    LEN(175)
  15. DCL             VAR(&W1DATE)       TYPE(*CHAR)     LEN(8)
  16. DCL              VAR(&QRY)       TYPE(*CHAR)      LEN(350)
  17. DCL              VAR(&P0QRY1)        TYPE(*CHAR)     LEN(2)    VALUE('Q1')
  18. DCL             VAR(&P0QRY2)          TYPE(*CHAR)   LEN(2)      VALUE('Q2')
  19. DCL              VAR(&P0QRY3)         TYPE(*CHAR)     LEN(2)      VALUE('Q3')
  20.  
  21. DCLF            FILE(SSBRCPL)
  22.  
  23. READ:               RCVF
  24.                           MONMSG       MSGID(CPF0864)         EXEC(GOTO  CMDLBL(END))
  25.                           CHGVAR              VAR(&L@BRNO)  VALUE(&XIBRNO)
  26.                          CHGVAR                VAR(&L@GMAB)  VALUE(&GMAB)
  27.                           CHGVAR               VAR(&L@CTCD)           VALUE(&CTCD)
  28.                           CHGVAR                VAR(&L@XMDT)       VALUE(&W1DATE)
  29.                     CVTDAT              DATE(&PREVDAY)         TOVAR(&W1DATE)   FROMFMT(*ISO)   +
  30.                                      TOFMT(*DMYY)   TOSEP(*NONE)
  31.                           CHGVAR              VAR(&L@XMDT)            VALUE(&W1DATE)
  32.  
  33. IF COND(&L@BRNO  *EQ  '  ') THEN(DO)
  34. GOTO       CMDLBL(READ)
  35. ENDDO
  36.  
  37.  
  38. CHGVAR           VAR(&SELT1)  VALUE  ('L@CTCD  *EQ "'   || &CTCD  ||  +
  39.                             ' "  *AND  L@GMAB    *EQ  "'  ||  &GMAB    ||  "  *AND  +
  40.                          L@BRNO    *EQ    "'     ||  &L@BRNO     ||  '"   *AND    +
  41.                         L@XMDT   *EQ  "'   ||   &W1DATE     ||  ' " ')
  42.  
  43. CHKOBJ        OBJ   (QTEMP/BA@IMTP) OBJTYPE(*FILE)
  44. MONMSG     MSGID(CPF9801)     EXEC(DO)
  45. CRTDUPOBJ      OBJ(BA@IMTP)       FROMLIB(*LIBL)    OBJTYPE(*FILE)   +
  46.                             TOLIB(QTEMP)   NEWOBJ(BA@IMTP)     CST(*NO)  +
  47.                          TRG(*NO)    ACCTL(*NONE)
  48. ENDDO
  49.  
  50. CLRPFM       FILE(INBA71P)  MBR(*ALL)
  51.  
  52.  
  53. CALL  PGM(INB071M)  PARM(&W1DATE   &P0QRY1)
  54.  
  55. OVRDBF    FILE(BA@IMTP)     TOFILE(QTEMP/BA@IMTP)  +
  56.                    OVRSCOPE(*JOB)     SHARE(*YES)
  57.  
  58. OPNQRYF FILE ((BA@IMTP))  QRYSLT(&SELT1)   +
  59.     KEYFLD(L@CTCD) (L@GMAB)  (L@BRNO))
  60.     
  61. CHGVAR   VAR(&L@XMDT)          VALUE(&W1DATE)
  62.  
  63. CHGVAR   VAR(&P@BRNO)           VALUE(&L@BRNO)
  64.  
  65. CHGVAR    VAR(&P@XMDT)         VALUE(&L@XMDT)
  66.  
  67. CLRPFM   FILE(INBA71P)   MBR(*ALL)
  68.  
  69.  
  70. CALL   PGM (INB71A)  PARM( &L@CTCD   &L@GMAB  +
  71.                        &P@BRNO   &P@XMDT)
  72.  
  73. CLOF   OPNID(BA@IMTP)
  74.  
  75. DLTOVR    FILE(*ALL)   LVL(*JOB)
  76.  
  77. RCLRSC   
  78.  
  79. CALL PGM(INBA071M)   PARM(&W1DATE  &P0QRY2)
  80.  
  81. CALL PGM (INBA071M)   PARM(&W1DATE  &P0QRY3)
  82.  
  83.  
  84. GOTO  CMDLBL(READ)
  85.  
  86. END:  ENDPGM
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.              
  120.  
© 2004-2019 by midrange.com generated in 0.009s valid xhtml & css