Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

File Open error

Status
Not open for further replies.

Marylander

Programmer
Mar 10, 2005
6
0
0
US
Can anyone tell me why my open Outfile is not working. I put DISPLAY statements in the program to see where the error was occurring. I run an .exe file that kicks off several programs both .pco and .cbl programs. The DISPLAY XXX works right before the OPEN OUTPUT OUTFILE statement but not the DISPLAY YYY immediately after it. Also, the 'PRINT_DIR/' code returns a Unix 21 error. How do you tell the program to read that particular directory and not look at it as a file?

000000 IDENTIFICATION DIVISION.
IDI020*PROGRAM-ID. CRAGTTOT.
IDI000 PROGRAM-ID. i39l.
000000* THIS PROGRAM WILL CREATE SUMMARY STATISTICS FOR AGENTS
000000* FOR A REQUESTED PERIOD
000025 ENVIRONMENT DIVISION.
000030 CONFIGURATION SECTION.
000060 INPUT-OUTPUT SECTION.
IDI060 FILE-CONTROL.
IDI060 SELECT OUTFILE, ASSIGN TO PRINTER PRT-FILE.
IDI060 DATA DIVISION.
IDI000 FILE SECTION.
IDI070 FD OUTFILE.
IDI070 01 OUTREC PIC X(110).
000070 WORKING-STORAGE SECTION.
000080 EXEC SQL BEGIN DECLARE SECTION END-EXEC.
000081* 01 TEMP-OUTFILE PIC X(100) VALUE SPACE.
000082 01 USERID PIC X(7) VALUE SPACE.
000085 01 PASSWORD PIC X(10) VALUE SPACE.
000000 01 NAMEL PIC X(35) VALUE SPACES.
000000 01 GRADE PIC X(02) VALUE SPACES.
000000 01 EMPNO PIC X(9) VALUE SPACES.
000000 01 SSAN PIC X(9) VALUE SPACES.
000000 01 AGTNAME PIC X(35) VALUE SPACES.
000000 01 SPTAGENT PIC X(35) VALUE SPACES.
000000 01 SPTHRS PIC S9(9)V99 COMP-3 VALUE 0.
000087 01 INVNBR1 PIC X(9) VALUE SPACE.
000087 01 ACTION PIC X(3) VALUE SPACE.
000087 01 CAT PIC X(2) VALUE SPACE.
000087 01 RGN PIC X(2) VALUE SPACE.
000087 01 RGN1 PIC X(2) VALUE SPACE.
000088 01 RGNHLD PIC X(2) VALUE SPACE.
000171 01 RGNCODE PIC X(03) VALUE SPACES.
000171 01 RGNNAME PIC X(25) VALUE SPACES.
000000 01 YR PIC X(2).
000000 01 CITY PIC X(3).
000000 01 SEQ PIC X(3).
000000 01 FILENBRX PIC X(12) VALUE SPACES.
000000 01 RGNX PIC X(3) VALUE SPACES.
000000 01 PROGX PIC X(4) VALUE SPACES.
000000 01 SEQX PIC X(4) VALUE SPACES.
000000 01 TYPEX PIC X(2) VALUE SPACES.
000171 01 DESCR PIC X(30) VALUE SPACE.
000171 01 RGNDESC PIC X(30) VALUE SPACE.
000171 01 DATE1 PIC X(11) VALUE SPACE.
000171 01 DATE2 PIC X(11) VALUE SPACE.
000171 01 DATECLSD PIC X(11) VALUE SPACE.
000171 01 DATEASGN PIC X(11) VALUE SPACE.
000171 01 DATEEND PIC X(11) VALUE SPACE.
000088 01 ODTE PIC X(11) VALUE SPACE.
000088 01 SDTE PIC X(11) VALUE SPACE.
000088 01 EDTE PIC X(11) VALUE SPACE.
000160 01 SDTE-H PIC X(11) VALUE SPACE.
000160 01 SDTE1 PIC X(11) VALUE SPACE.
000160 01 SDTET PIC X(11) VALUE SPACE.
000160 01 EDTET PIC X(11) VALUE SPACE.
------ 01 SDTEX PIC X(11) VALUE SPACES.
------ 01 SDTE1X PIC X(11) VALUE SPACES.
000160 01 USERNAME PIC X(7) VALUE SPACE.
000000 01 NATURE PIC X(02) VALUE SPACES.
000000 01 PERIODEND PIC X(11) VALUE SPACES.
000000 01 NATDESC PIC X(20) VALUE SPACES.
000000 01 NATIND PIC X(02) VALUE SPACES.
000000 01 H-AGENTNBR PIC X(9).
000000 01 AGENTNBR PIC X(9).
000000 01 PARMZ PIC X(40).
000010 01 OPN-CNT PIC S9(4) COMP VALUE 0.
000010 01 CLS-CNT PIC S9(4) COMP VALUE 0.
000010 01 PEN-CNT PIC S9(4) COMP VALUE 0.
000010 01 AREF-CNT PIC S9(4) COMP VALUE 0.
000010 01 CREF-CNT PIC S9(4) COMP VALUE 0.
000010 01 DEC-CNT PIC S9(4) COMP VALUE 0.
000010 01 ACT-CNT PIC S9(4) COMP VALUE 0.
000010 01 ACT-CNT2 PIC S9(4) COMP VALUE 0.
000010 01 PTD-CNT PIC S9(4) COMP VALUE 0.
000010 01 IND-CNT PIC S9(4) COMP VALUE 0.
IDI010 01 REF-CIV-CNT PIC S9(4) COMP VALUE 0.
IDI010 01 REF-ADM-CNT PIC S9(4) COMP VALUE 0.
000010 01 CON-CNT PIC S9(4) COMP VALUE 0.
IDI010 01 RST-CIV-CNT PIC S9(4) COMP VALUE 0.
IDI010 01 RST-ADM-CNT PIC S9(4) COMP VALUE 0.
000010 01 HRS PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 CRIMAMT PIC S9(9) COMP VALUE 0.
000010 01 CIVAMT PIC S9(9) COMP VALUE 0.
000010 01 ADMINAMT PIC S9(9) COMP VALUE 0.
000010 01 FINE PIC S9(9) COMP VALUE 0.
000010 01 FINES PIC S9(9) COMP VALUE 0.
000010 01 REST PIC S9(9) COMP VALUE 0.
000010 01 ASMNT PIC S9(9) COMP VALUE 0.
000010 01 OTHERX PIC S9(9) COMP VALUE 0.
000010 01 FORFEIT PIC S9(9) COMP VALUE 0.
000010 01 DAM PIC S9(9) COMP VALUE 0.
000010 01 PEN PIC S9(9) COMP VALUE 0.
000010 01 FORFT PIC S9(9) COMP VALUE 0.
000010 01 CRTX PIC S9(9) COMP VALUE 0.
000010 01 SETAMT PIC S9(9) COMP VALUE 0.
000000 01 LRDHRS PIC S9(9)V99 COMP-3 VALUE 0.
000000 01 PFDHRS PIC S9(9)V99 COMP-3 VALUE 0.
000000 01 FTE1PC1 PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 FTE1PC2 PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 FTE2PC1 PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 FTE2PC2 PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 FTE1PC PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 FTE2PC PIC S9(5)V9999 COMP-3 VALUE 0.
000000 01 PFFTE PIC S9(9)V99 COMP-3 VALUE 79.4.
000000 01 LRFTE PIC S9(9)V99 COMP-3 VALUE 115.4.
000000 01 OIFTE PIC S9(9)V99 COMP-3 VALUE 115.4.
000000 01 OIDHRS PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 ELAP PIC S9(9) COMP VALUE 0.
000000 01 CPU PIC S9(9) COMP VALUE 0.
000000 01 IO PIC S9(9) COMP VALUE 0.
000000 01 PAGESEC PIC S9(9) COMP VALUE 0.
000010 01 HRS-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 CREF-TOT PIC S9(9) COMP VALUE 0.
000010 01 AREF-TOT PIC S9(9) COMP VALUE 0.
000010 01 ACT-TOT PIC S9(9) COMP VALUE 0.
000010 01 DEC-TOT PIC S9(9) COMP VALUE 0.
000010 01 IND-TOT PIC S9(9) COMP VALUE 0.
000010 01 CON-TOT PIC S9(9) COMP VALUE 0.
IDI010 01 CIV-REF-TOT PIC S9(9) COMP VALUE 0.
IDI010 01 CIV-RST-TOT PIC S9(9) COMP VALUE 0.
IDI010 01 ADM-REF-TOT PIC S9(9) COMP VALUE 0.
IDI010 01 ADM-RST-TOT PIC S9(9) COMP VALUE 0.
000010 01 CRIM-TOT PIC S9(9) COMP VALUE 0.
000010 01 CIV-TOT PIC S9(9) COMP VALUE 0.
000010 01 ADMIN-TOT PIC S9(9) COMP VALUE 0.
000160 EXEC SQL END DECLARE SECTION END-EXEC.
000170 EXEC SQL INCLUDE SQLCA END-EXEC.
000000 01 ERRTABLE PIC X(20) VALUE SPACES.
000010 01 OPN-TOT PIC S9(9) COMP VALUE 0.
000010 01 CLS-TOT PIC S9(9) COMP VALUE 0.
000010 01 PEND-TOT PIC S9(9) COMP VALUE 0.
000010 01 PEN-TOT PIC S9(9) COMP VALUE 0.
000010 01 FTE1-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 FTE2-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 GR-FTE1-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 GR-FTE2-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 CASE-HRS-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 TOT-MON PIC S9(9) COMP VALUE 0.
000000 01 TOT-MON-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-OPN-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-CLS-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-PEND-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-PEN-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-HRS-TOT PIC S9(9)V99 COMP-3 VALUE 0.
000010 01 GR-CREF-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-AREF-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-ACT-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-DEC-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-IND-TOT PIC S9(9) COMP VALUE 0.
000010 01 GR-CON-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-CIV-REF-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-CIV-RST-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-ADM-REF-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-ADM-RST-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-CRIMAMT-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-CIVAMT-TOT PIC S9(9) COMP VALUE 0.
IDI010*01 GR-ADMIN-TOT PIC S9(9) COMP VALUE 0.
000170 01 DDDUMMY PIC X(10) VALUE SPACE.
000157 01 LINE-CNTR PIC 9(2) VALUE 0.
000000 01 FILENAME PIC X(26) VALUE SPACE.
000000 01 COPIES PIC X VALUE '1'.
IDI157 01 PRT-FILE.
IDI157 02 FILLER PIC X(10) VALUE "PRINT_DIR/".
IDI157 02 FILE-REG PIC X(4) VALUE SPACE.
IDI157 02 FILLER PIC X(6) VALUE ".i39l.".
IDI157 02 FILE-TIME PIC X(6) VALUE SPACE.
IDI157*01 PAGE-CNT PIC 9(3) VALUE 1.
IDI000*01 LINE-CNT PIC 9(3) VALUE 0.
IDI000*01 BL-LINE PIC X(170) VALUE SPACES.
IDI000*01 HEADER-X PIC X(170) VALUE ALL '-'.
IDI240*01 DETAIL1.
IDI000* 02 FILLER PIC X(01) VALUE '"'.
IDI270* 02 AGENT-OUT PIC X(35) VALUE SPACE.
IDI000* 02 FILLER PIC X(01) VALUE '"'.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI000* 02 GRADE-OUT PIC X(02) VALUE SPACES.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI000* 02 RGN-OUT PIC X(02) VALUE SPACES.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI290* 02 HRS-OUT PIC ZZZZZZ9.99.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI380* 02 IND-OUT PIC ZZZ9.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI400* 02 CON-OUT PIC ZZZ9.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI420* 02 CRIM-OUT PIC ZZZZZZZZZZ9.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI440* 02 CIV-OUT PIC ZZZZZZZZZZ9.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI450* 02 ADMIN-OUT PIC ZZZZZZZZZZ9.
IDI000* 02 FILLER PIC X(01) VALUE ",".
IDI000* 02 TOT-MON-OUT PIC ZZZZZZZZZZ9.
IDI000 01 HEADER-OUT.
IDI000 02 FILLER PIC X(80)
IDI000 VALUE "Report Completed".
IDI000*01 DETAIL2.
IDI000* 02 SPT-AGENT PIC X(25) VALUE SPACES.
IDI000* 02 FILLER PIC X(08) VALUE SPACES.
IDI000* 02 SPT-HOURS PIC ZZZZZZ9.99 VALUE 0.
IDI000*01 DETAIL3.
IDI000* 02 FILLER PIC X(33) VALUE "* CASE TOTAL".
IDI000* 02 D3-CASE-TOTAL PIC ZZZZZZ9.99 VALUE 0.
IDI000*01 LR-CASE.
IDI000* 02 LR-YR PIC X(2).
IDI000* 02 FILLER PIC X(1) VALUE "-".
IDI000* 02 LR-CITY PIC X(3).
IDI000* 02 FILLER PIC X(1) VALUE "-".
IDI000* 02 LR-SEQ PIC X(3).
IDI000*01 PF-CASE.
IDI000* 02 PF-RGN PIC X(2).
IDI000* 02 FILLER PIC X(1) VALUE "-".
IDI000* 02 PF-PROG PIC X(4).
IDI000* 02 FILLER PIC X(1) VALUE "-".
IDI000* 02 PF-SEQ PIC X(4).
000000 01 H-AGTNAME PIC X(35) VALUE SPACES.
000000 01 FETCH-CNT PIC 9(3) VALUE 0.
000000 01 H-PARM.
000000 02 H-ID PIC X(7) VALUE '40'.
000000 02 H-PASS PIC X(10).
000000 01 U-ID.
000000 02 U-NAME PIC X(3).
000000 02 U-REG.
000000 05 U-REG1 PIC X(1).
000000 05 U-REG2 PIC X(3).
000000 01 DDDUMMY6 PIC X(10) VALUE SPACE.
000000 01 TIMEIN.
000000 02 TIMEMAJ PIC 9(6).
000000 02 TIMEMIN PIC 99.
000000 01 DATE-GROUP.
000000 03 DATEIN.
000000 05 YY PIC 9999.
000000 05 MM PIC 99.
000000 05 DD PIC 99.
000000 03 DATE-DISP.
000000 05 MONTH1 PIC 99.
000000 05 FILLER PIC X VALUE "/".
000000 05 DAY1 PIC 99.
000000 05 FILLER PIC X VALUE "/".
000000 05 YEAR1 PIC 9999.
IDI000 COPY "webdata.cpy".
IDI000*SCREEN SECTION.
IDI000*01 BLANK-SCREEN.
IDI000* 03 BLANK SCREEN.
IDI000*01 DATES-SCR.
IDI000* 03 LINE 1 COL 25
IDI000* "Enter Date Range for Review Period" reverse-video.
IDI000* 03 LINE 3 COL 1 "Starting ".
IDI000* 03 S-ANS LINE 3 COL 10 PIC X(11)
IDI000* USING SDTE auto reverse-video.
IDI000* 03 LINE 3 COL 21 " thru ".
IDI000* 03 E-ANS LINE 3 COL 27 PIC X(11)
IDI000* USING EDTE auto reverse-video.
IDI000 PROCEDURE DIVISION USING LK-RETURN-CODE-MSG.
IDI000 DISPLAY "The i39l.pco program has started".
IDI000* CALL "IDPARMS" USING H-PARM.
IDI000 MOVE LK-USERID TO H-ID.
000000 MOVE H-ID TO USERID U-ID.
000000 MOVE H-PASS TO PASSWORD.
000000* ACCEPT DATEIN FROM DATE.
000000* ACCEPT TIMEIN FROM TIME.
000000* MOVE MM TO MONTH1.
000000* MOVE DD TO DAY1.
000000* MOVE YY TO YEAR1.
IDI000* MOVE TIMEMAJ TO FILE-TIME.
000000 INIT.
000000* MOVE U-REG TO FILE-REG.
000230* MOVE PRT-FILE TO FILENAME.
000230* EXEC SQL WHENEVER SQLERROR GOTO ERROR-RTN END-EXEC.
IDI DISPLAY "Is this working".
IDI230* EXEC SQL
IDI240* CONNECT :USERID IDENTIFIED BY :pASSWORD
IDI250* END-EXEC.
000000 GO TO START-PROC.
IDI DISPLAY "i39l run check".
000000 ERROR-RTN.
IDI000* DISPLAY SQLERRMC.
IDI000* DISPLAY "TABLE: " ERRTABLE.
IDI000* STOP RUN.
IDI000 SET ERR-SQLERR TO TRUE.
IDI DISPLAY "Continue running i39l program".
IDI000 GO TO EXIT-PROGRAM.
000000 START-PROC.
IDI DISPLAY "Check where is bombing after Peer Review".
000000 MOVE "PEER_REVIEW" TO ERRTABLE.
IDI DISPLAY "Peer Review Check".
IDI000* IF USERID = 'pamh301'
IDI000* EXEC SQL
IDI000* DELETE FROM PEER_REVIEW
IDI000* END-EXEC
IDI000* ELSE
000230 EXEC SQL
000000 TRUNCATE TABLE PEER_REVIEW
000250 END-EXEC.
IDI000* MOVE OUTFILE TO TEMP-OUTFILE.
IDI DISPLAY "XXX".
IDI580 OPEN OUTPUT OUTFILE.
IDI000 DISPLAY "YYY".
IDI000 WRITE OUTREC FROM HEADER-OUT AFTER ADVANCING 1.
000580 EXEC SQL WHENEVER NOT FOUND GOTO BATCH-DONE END-EXEC.
000600 EXEC SQL SELECT SYSDATE INTO :ODTE FROM DUAL END-EXEC.
000260 DECLARE-RTN.
IDI000* GO TO MANUAL-INP.
000000 MOVE "REPORT-DATES" TO ERRTABLE.
000580 EXEC SQL WHENEVER NOT FOUND GO TO
000590 MANUAL-INP END-EXEC.
000260 EXEC SQL
000270 DECLARE Q1 CURSOR FOR
IDI270 SELECT TO_CHAR(SDATE1,'DD-MON-YYYY'),
IDI TO_CHAR(EDATE1,'DD-MON-YYYY'),
IDI TO_CHAR(SDATE1,'DD-MON-YYYY'),
IDI310 TO_CHAR(EDATE1,'DD-MON-YYYY')
000310 FROM OI_REPORTS
000310 WHERE REPORT_NBR = 39
000310 AND UNAME = :USERID
000320 END-EXEC.
000580 EXEC SQL OPEN Q1 END-EXEC.
000580 EXEC SQL FETCH Q1 INTO :SDTE, :EDTE, :DATE1, :DATE2
000580 END-EXEC.
000580 EXEC SQL CLOSE Q1 END-EXEC.
000771 EXEC SQL
000771 DELETE FROM OI_REPORTS
000771 WHERE SDATE1 = :SDTE AND EDATE1 = :EDTE
000771 AND UNAME = :USERID AND REPORT_NBR = 39 END-EXEC.
000771 EXEC SQL COMMIT WORK END-EXEC.
000000 GO TO MANUAL-INP-X.
000000 MANUAL-INP.
IDI000* DISPLAY DATES-SCR.
IDI000* ACCEPT DATES-SCR on escape go to BATCH-DONE.
000000 MOVE SDTE TO DATE1.
000000 MOVE EDTE TO DATE2.
000000 MANUAL-INP-X.
000000 MOVE SDTE TO SDTE-H.
000000 MOVE "PAY PERIOD " TO ERRTABLE.
000000 EXEC SQL
000000 SELECT MIN(TO_CHAR(EDATE,'DD-MON-YYYY')) INTO :SDTET
000000 FROM OI_PAYPERIOD
000000 WHERE SDATE BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 END-EXEC.
000000 EXEC SQL
000000 SELECT MAX(TO_CHAR(EDATE,'DD-MON-YYYY')) INTO :EDTET
000000 FROM OI_PAYPERIOD
000000 WHERE EDATE BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 END-EXEC.
000000 DECLARES.
000000 MOVE "EMP-INFO" TO ERRTABLE.
000000 EXEC SQL WHENEVER SQLERROR GO TO ERROR-RTN END-EXEC.
000000 EXEC SQL WHENEVER NOT FOUND CONTINUE END-EXEC.
000000 EXEC SQL DECLARE A1 CURSOR FOR
000000 SELECT SSAN, NAMEL||', '||NAMEF, GRADE, REGION
000000 FROM OI_EMP
000000 WHERE DATE_SEPARATION IS NULL
000000 AND AGENT = 'Y'
000000* AND FTE_CALC = 'Y'
* (Commented out 3/26/04 by MSP)
000000 AND GRADE IN ('09','11','12','13')
000000 ORDER BY GRADE, NAMEL||NAMEF
000000 END-EXEC.
000000 EXEC SQL DECLARE B1 CURSOR FOR
000000 SELECT DISTINCT FILE_NBR, SSAN,
000000 TO_CHAR(DATE_ASSIGN,'DD-MON-YYYY'),
000000 TO_CHAR(DATE_END,'DD-MON-YYYY')
000000 FROM OI_FILE_AGENT
000000 WHERE SSAN = :EMPNO
000000 AND DATE_ASSIGN <= TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND (DATE_END IS NULL
000000 OR DATE_END >= TO_DATE:)SDTE,'DD-MON-YYYY'))
000000 ORDER BY FILE_NBR
000000 END-EXEC.
000000 OPEN-A1.
000000 EXEC SQL OPEN A1 END-EXEC.
000000 FETCH-A1.
000000 EXEC SQL WHENEVER NOT FOUND GOTO FETCH-A1X END-EXEC.
000000 MOVE "OI_EMP" TO ERRTABLE.
000000 EXEC SQL
000000 FETCH A1 INTO :EMPNO, :AGTNAME, :GRADE, :RGN
000000 END-EXEC.
000000 ADD 1 TO FETCH-CNT.
IDI000* IF FETCH-CNT > 15
IDI000* GO TO FETCH-A1X.
000000* DISPLAY AGTNAME AT 1005.
000000 EXEC SQL WHENEVER SQLERROR GOTO ERROR-RTN END-EXEC.
000000 EXEC SQL WHENEVER NOT FOUND GOTO CLOSE-B1 END-EXEC.
000000 EXEC SQL OPEN B1 END-EXEC.
000000 MOVE ZERO TO FETCH-CNT.
000000 FETCH-B1.
000000 MOVE SDTE-H TO SDTE.
000000 MOVE 0 TO OPN-CNT CLS-CNT PEN-CNT HRS CRIMAMT.
000000 MOVE 0 TO DEC-CNT AREF-CNT HRS ADMINAMT ACT-CNT.
000000 MOVE 0 TO PEN DAM FORFT CRTX SETAMT CIVAMT.
000000 MOVE 0 TO CREF-CNT CON-CNT IND-CNT PTD-CNT.
IDI000 MOVE 0 TO REF-CIV-CNT REF-ADM-CNT RST-CIV-CNT RST-ADM-CNT.
000000 MOVE 0 TO FINE REST ASMNT OTHERX.
000000 EXEC SQL WHENEVER NOT FOUND GOTO FETCH-B1X END-EXEC.
000000 MOVE "OI_FILE_AGENT" TO ERRTABLE.
000000 EXEC SQL
000000 FETCH B1 INTO :FILENBRX, :SSAN, :DATEASGN, :DATEEND
000000 END-EXEC.
000000 IF DATEEND = SPACES
000000 MOVE EDTE TO DATEEND.
000000* DISPLAY " CASE - " AT 1205,FILENBRX AT 1213,DATEEND AT 1230.
000000 MOVE "OI-CREFER" TO ERRTABLE.
000000 EXEC SQL
000000 SELECT COUNT (*) INTO :IND-CNT
000000 FROM OI_CRIM_REFER
000000 WHERE DATE_CHARGE BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND DATE_CHARGE BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
000000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
000730 AND FILE_NBR = :FILENBRX
000000 END-EXEC.
------ MOVE "OI-CRRESLT1" TO ERRTABLE.
000000 EXEC SQL
000000 SELECT COUNT (*) INTO :CON-CNT
000000 FROM OI_CRIM_RESULT
000000 WHERE DATE_OUTCOME BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND DATE_OUTCOME BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
000000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
000000 AND OUTCOME_CDE IN ('CV','PT')
000000 AND FILE_NBR = :FILENBRX
000000 END-EXEC.
------ MOVE "OI-CRRESLT2" TO ERRTABLE.
000000 EXEC SQL
000000 SELECT SUM(NVL(FINE,0)) + SUM(NVL(REST,0)) +
000000 SUM(NVL(FORFEIT,0)) + SUM(NVL(OTHER,0))
000000 INTO :CRIMAMT
000000 FROM OI_CRIM_RESULT
000000 WHERE DATE_SENT BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND DATE_SENT BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
000000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
000000 AND FILE_NBR = :FILENBRX
000000 END-EXEC.
IDI000 MOVE "OI-CVREFER" TO ERRTABLE.
IDI000 EXEC SQL
IDI000 SELECT COUNT (*) INTO :REF-CIV-CNT
IDI000 FROM OI_CIVIL_REFER
IDI000 WHERE DATE_REFER BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
IDI000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
IDI000 AND DATE_REFER BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
IDI000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
IDI730 AND FILE_NBR = :FILENBRX
IDI000 END-EXEC.
IDI--- MOVE "OI-CVRRESLT1" TO ERRTABLE.
IDI000 EXEC SQL
IDI000 SELECT COUNT (*) INTO :RST-CIV-CNT
IDI000 FROM OI_CIVIL_RESULT
IDI000 WHERE DATE_OUTCOME BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
IDI000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
IDI000 AND DATE_OUTCOME BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
IDI000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
IDI000 AND FILE_NBR = :FILENBRX
IDI000 END-EXEC.
------ MOVE "OI-CVRESLT2" TO ERRTABLE.
000730 EXEC SQL
000000 SELECT SUM(NVL(PENALTY,0)) + SUM(NVL(SETTLMNT,0)) +
000000 SUM(NVL(DAMAGE,0)) + SUM(NVL(FORFEIT,0)) +
000000 SUM(NVL(FINE,0)) + SUM(NVL(OTHER,0))
000730 INTO :CIVAMT
000730 FROM OI_CIVIL_RESULT
000000 WHERE DATE_OUTCOME BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND DATE_OUTCOME BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
000000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
000000 AND OUTCOME_CDE IN ('JD', 'CD','ST')
000000 AND FILE_NBR = :FILENBRX
000000 END-EXEC.
IDI000 MOVE "OI-ADRREFER" TO ERRTABLE.
IDI000 EXEC SQL
IDI000 SELECT COUNT (*) INTO :REF-ADM-CNT
IDI000 FROM OI_ADMIN_REFER
IDI000 WHERE DATE_REFER BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
IDI000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
IDI000 AND DATE_REFER BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
IDI000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
IDI730 AND FILE_NBR = :FILENBRX
IDI000 END-EXEC.
IDI--- MOVE "OI-ADRESLT1" TO ERRTABLE.
IDI000 EXEC SQL
IDI000 SELECT COUNT (*) INTO :RST-ADM-CNT
IDI000 FROM OI_ADMIN_RESULT
IDI000 WHERE DATE_OUTCOME BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
IDI000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
IDI000 AND DATE_OUTCOME BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
IDI000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
IDI000 AND FILE_NBR = :FILENBRX
IDI000 END-EXEC.
------ MOVE "OI-ADRESLT2" TO ERRTABLE.
000730 EXEC SQL
000730 SELECT SUM(NVL(AMOUNT,0)) INTO :ADMINAMT
000730 FROM OI_ADMIN_RESULT
000730 WHERE DATE_OUTCOME BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 AND DATE_OUTCOME BETWEEN TO_DATE:)DATEASGN,'DD-MON-YYYY')
000000 AND TO_DATE:)DATEEND,'DD-MON-YYYY')
000000 AND FILE_NBR = :FILENBRX
000000 END-EXEC.
000000 ADD IND-CNT TO IND-TOT.
000000 ADD CON-CNT TO CON-TOT.
000000 ADD REF-CIV-CNT TO CIV-REF-TOT.
000000 ADD RST-CIV-CNT TO CIV-RST-TOT.
000000 ADD REF-ADM-CNT TO ADM-REF-TOT.
000000 ADD RST-ADM-CNT TO ADM-RST-TOT.
000000 ADD CRIMAMT TO CRIM-TOT.
000000 ADD CIVAMT TO CIV-TOT.
000000 ADD ADMINAMT TO ADMIN-TOT.
000000 GO TO FETCH-B1.
000000 FETCH-B1X.
000000 EXEC SQL CLOSE B1 END-EXEC.
000000*
000000 OUTPUT-DATA.
------ MOVE "OI-DTIME " TO ERRTABLE.
000000 EXEC SQL WHENEVER NOT FOUND CONTINUE END-EXEC.
000000 EXEC SQL
000000 SELECT SUM(NVL(HRS,0)) INTO :HRS
000000 FROM OI_DTIME
000000 WHERE SSAN = :EMPNO
000000 AND PERIOD_END BETWEEN TO_DATE:)SDTE,'DD-MON-YYYY')
000000 AND TO_DATE:)EDTE,'DD-MON-YYYY')
000000 END-EXEC.
000000 ADD HRS TO HRS-TOT.
IDI000* MOVE AGTNAME TO AGENT-OUT.
IDI000* MOVE GRADE TO GRADE-OUT.
IDI000* MOVE RGN TO RGN-OUT.
IDI000* MOVE HRS-TOT TO HRS-OUT.
IDI000* MOVE IND-TOT TO IND-OUT.
IDI000* MOVE CON-TOT TO CON-OUT.
IDI000* MOVE CRIM-TOT TO CRIM-OUT.
IDI000* MOVE CIV-TOT TO CIV-OUT.
IDI000* MOVE ADMIN-TOT TO ADMIN-OUT.
IDI000* COMPUTE TOT-MON-TOT = CRIM-TOT + CIV-TOT + ADMIN-TOT.
IDI000* MOVE TOT-MON-TOT TO TOT-MON-OUT.
000000 MOVE "LINE 449" TO ERRTABLE.
000000 EXEC SQL
000000 INSERT INTO PEER_REVIEW VALUES
000000 :)AGTNAME, :GRADE, :RGN,
000000 :HRS-TOT, :IND-TOT, :CON-TOT,
000000 :CRIM-TOT, :CIV-TOT, :ADMIN-TOT,
000000 NVL:)CRIM-TOT,0)+
000000 NVL:)CIV-TOT,0)+
000000 NVL:)ADMIN-TOT,0),
000000 :SDTE, :EDTE,
IDI000 :ADM-REF-TOT,
IDI000 :ADM-RST-TOT,
IDI000 :CIV-REF-TOT,
IDI000 :CIV-RST-TOT
000000 )
000000 END-EXEC.
IDI000* WRITE OUTREC FROM DETAIL1 AFTER ADVANCING 1.
000000 MOVE ZEROS TO HRS-TOT, IND-TOT, CON-TOT, CRIM-TOT.
000000 MOVE ZEROS TO CIV-TOT, ADMIN-TOT, TOT-MON-TOT.
IDI000 MOVE ZEROS TO CIV-REF-TOT, CIV-RST-TOT.
IDI000 MOVE ZEROS TO ADM-REF-TOT, ADM-RST-TOT.
IDI000* MOVE ZEROS TO HRS-OUT, IND-OUT, CON-OUT, CRIM-OUT.
IDI000* MOVE ZEROS TO CIV-OUT, ADMIN-OUT, TOT-MON-OUT.
000000 GO TO FETCH-A1.
000000 FETCH-A1X.
000000 EXEC SQL CLOSE A1 END-EXEC.
000000* EXEC SQL COMMIT WORK RELEASE END-EXEC.
IDI000 DISPLAY "CHECKPOINT before OUTPUT OUTFILE is closed".
000000 CLOSE OUTFILE.
000000* CALL "ORAPRINT" USING FILENAME COPIES.
000000 BATCH-DONE.
000000 EXEC SQL COMMIT WORK RELEASE END-EXEC.
IDI000 SET RPT-EXEC-STS TO TRUE.
IDI000 GO TO EXIT-PROGRAM.
000000* DISPLAY BLANK-SCREEN.
IDI000 COPY "webproc.cpy".
IDI DISPLAY "i39l.pco has completed".
IDI000 EXIT PROGRAM.
 
I dont see where "file-reg" gets changed from blanks. Also,
I presume that "print_dir" is an existing directory within the current path of the program since there is not preceding "/".
 
PRINT_DIR is one directory forward. Yes it is within the same structure. I have the Move u-reg to file-reg commented. Should I uncomment that line?
 
You cant have blanks in a file name. you need to put something in there.
 
What line are you referring to? What variable (FILE-REG or PRT-FILE)? How would is that coded?
 
IDI157 01 PRT-FILE.
IDI157 02 FILLER PIC X(10) VALUE "PRINT_DIR/".
IDI157 02 FILE-REG PIC X(4) VALUE SPACE.
IDI157 02 FILLER PIC X(6) VALUE ".i39l.".
IDI157***02 FILE-TIME PIC X(6) VALUE SPACE.


Try this:
move "prnt" to file-reg.
open output outfile.

also are you sure the existing directory named PRINT_DIR
is actually in capital letters?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top