       IDENTIFICATION                  DIVISION.
       PROGRAM-ID.                     EXCBL01.
      ******************************************************************
      *  SYSTEM   : TvvO
      *  PGM-ID   : EXCBL01
      *  PGM-NAME : f[^Wv
      *  AUTHOR   : K.HIWASA
      *  DATE     : 2025/01/03
      ******************************************************************
       ENVIRONMENT                     DIVISION.
       INPUT-OUTPUT                    SECTION.
       FILE-CONTROL.
      *-----------------------------------------------------------------
      *  ʔ㖾׃t@C
      *-----------------------------------------------------------------
           SELECT  IN01                ASSIGN       TO SYSIN01
                                       ACCESS  MODE IS SEQUENTIAL.
      *-----------------------------------------------------------------
      *  㖾׃t@C
      *-----------------------------------------------------------------
           SELECT  OT01                ASSIGN       TO SYSOT01
                                       ACCESS  MODE IS SEQUENTIAL.
      ******************************************************************
      *  DATA DIVISION
      ******************************************************************
       DATA                            DIVISION.
       FILE                            SECTION.
      *-----------------------------------------------------------------
      *  ʔ㖾׃t@C
      *-----------------------------------------------------------------
       FD  IN01.
       01  IN01-REC.
           03  IN01-URIAGE-DATE        PIC  X(008).
           03  IN01-SHOHIN-CD          PIC  X(004).
           03  IN01-SURYO              PIC S9(003)  COMP-3.
           03  IN01-TANKA              PIC S9(005)  COMP-3.
           03  FILLER                  PIC  X(033).
      *-----------------------------------------------------------------
      *  㖾׃t@C
      *-----------------------------------------------------------------
       FD  OT01.
       01  OT01-REC.
           03  OT01-SHOHIN-CD          PIC  X(004).
           03  OT01-SURYO-KEI          PIC S9(005)  COMP-3.
           03  OT01-KINGAKU            PIC S9(009)  COMP-3.
           03  FILLER                  PIC  X(038).
      *-----------------------------------------------------------------
       WORKING-STORAGE                 SECTION.
      *
       01  CNT-AREA.
           03  CNT-IN01                PIC  9(006)  VALUE  ZERO.
           03  CNT-OT01                PIC  9(006)  VALUE  ZERO.
      *
       01  SW-AREA.
           03  SW-END                  PIC  X(001)  VALUE  SPACE.
      ******************************************************************
      *  PROCEDURE DIVISION
      ******************************************************************
       PROCEDURE                       DIVISION.
      *
           PERFORM  INIT-RTN.
      *
           PERFORM  MAIN-RTN
             UNTIL  SW-END  =  '1'.
      *
           PERFORM  TERM-RTN.
      *
           GOBACK.
      ******************************************************************
      *  
      ******************************************************************
       INIT-RTN                        SECTION.
      *
           OPEN  INPUT   IN01
                 OUTPUT  OT01.
      *
      *̓t@CǍ
           PERFORM  IN01-READ-RTN.
      *
       INIT-RTN-EXIT.
           EXIT.
      ******************************************************************
      *  又
      ******************************************************************
       MAIN-RTN                        SECTION.
      *
           MOVE  SPACE                 TO  OT01-REC.
           INITIALIZE                      OT01-REC.
      *
           MOVE  IN01-SHOHIN-CD        TO  OT01-SHOHIN-CD.
      *
           PERFORM  MEISAI-RTN
             UNTIL  SW-END  =  '1'
                OR  IN01-SHOHIN-CD  NOT =  OT01-SHOHIN-CD.
      *
           WRITE OT01-REC.
           ADD  1                      TO  CNT-OT01.
      *
       MAIN-RTN-EXIT.
           EXIT.
      ******************************************************************
      *  ׏
      ******************************************************************
       MEISAI-RTN                      SECTION.
      *
           ADD   IN01-SURYO            TO  OT01-SURYO-KEI.
           COMPUTE  OT01-KINGAKU       =   OT01-KINGAKU  +
                                           IN01-TANKA  *  IN01-SURYO.
      *̓t@CǍ
           PERFORM  IN01-READ-RTN.
      *
       MEISAI-RTN-EXIT.
           EXIT.
      ******************************************************************
      *  I
      ******************************************************************
       TERM-RTN                        SECTION.
      *
           CLOSE  IN01.
           CLOSE  OT01.
      *
           DISPLAY  '************'     UPON  CONSOLE.
           DISPLAY  'PGM :EXCBL01'     UPON  CONSOLE.
           DISPLAY  'IN01:' CNT-IN01   UPON  CONSOLE.
           DISPLAY  'OT01:' CNT-OT01   UPON  CONSOLE.
           DISPLAY  '************'     UPON  CONSOLE.
      *
       TERM-RTN-EXIT.
           EXIT.
      ******************************************************************
      *  ʔ㖾׃t@CǍ
      ******************************************************************
       IN01-READ-RTN                   SECTION.
      *
           READ  IN01
             AT  END
                 MOVE  '1'             TO  SW-END
                 GO  TO  IN01-READ-RTN-EXIT
           END-READ.
      *
           ADD  1                      TO  CNT-IN01
      *
       IN01-READ-RTN-EXIT.
           EXIT.
