test: add HINA type-specific COBOL test data suite (10 programs, 8/10 pass)
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
* HINA004 - 編集出力(GETPUT)
|
||||
>>SOURCE FORMAT IS FREE
|
||||
* レイアウト編集 レコード入出力
|
||||
* 期待: 2ファイル, 1 IF, 5 段落
|
||||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. HINA004.
|
||||
ENVIRONMENT DIVISION.
|
||||
INPUT-OUTPUT SECTION.
|
||||
FILE-CONTROL.
|
||||
SELECT IN-FILE ASSIGN TO "IN.DAT"
|
||||
ORGANIZATION IS LINE SEQUENTIAL.
|
||||
SELECT OUT-FILE ASSIGN TO "OUT.DAT"
|
||||
ORGANIZATION IS LINE SEQUENTIAL.
|
||||
DATA DIVISION.
|
||||
FILE SECTION.
|
||||
FD IN-FILE.
|
||||
01 IN-REC.
|
||||
05 IN-ID PIC X(05).
|
||||
05 IN-NAME PIC X(20).
|
||||
05 IN-AMT PIC 9(07)V99.
|
||||
FD OUT-FILE.
|
||||
01 OUT-REC PIC X(80).
|
||||
WORKING-STORAGE SECTION.
|
||||
01 WS-EOF PIC X VALUE 'N'.
|
||||
88 WS-EOF-Y VALUE 'Y'.
|
||||
01 WS-HEADER PIC X(80).
|
||||
01 WS-DETAIL PIC X(80).
|
||||
01 WS-LINE-CNT PIC 9(02).
|
||||
PROCEDURE DIVISION.
|
||||
0000-MAIN.
|
||||
OPEN INPUT IN-FILE.
|
||||
OPEN OUTPUT OUT-FILE.
|
||||
MOVE "ID NAME AMOUNT" TO WS-HEADER.
|
||||
WRITE OUT-REC FROM WS-HEADER.
|
||||
MOVE 0 TO WS-LINE-CNT.
|
||||
PERFORM 1000-READ.
|
||||
PERFORM 2000-PROCESS UNTIL WS-EOF-Y.
|
||||
CLOSE IN-FILE OUT-FILE.
|
||||
STOP RUN.
|
||||
1000-READ.
|
||||
READ IN-FILE INTO IN-REC
|
||||
AT END MOVE 'Y' TO WS-EOF-Y.
|
||||
2000-PROCESS.
|
||||
IF WS-LINE-CNT > 50 THEN
|
||||
MOVE SPACES TO WS-DETAIL
|
||||
STRING "--- PAGE BREAK ---"
|
||||
DELIMITED BY SIZE INTO WS-DETAIL
|
||||
WRITE OUT-REC FROM WS-DETAIL
|
||||
MOVE 0 TO WS-LINE-CNT.
|
||||
STRING IN-ID IN-NAME IN-AMT DELIMITED BY SIZE
|
||||
INTO WS-DETAIL.
|
||||
WRITE OUT-REC FROM WS-DETAIL.
|
||||
ADD 1 TO WS-LINE-CNT.
|
||||
PERFORM 1000-READ.
|
||||
Reference in New Issue
Block a user