因为你没有说具体的数据,我就只是假定了是一个普通文件,里面的记录有两个项一个为ID,一个为NAME.输入文件放在名为S-SYSIN,(dasd)的磁盘文件里,而输出到名为S-SYSOUT的磁盘(dasd)文件里。
编写了一个程序,编译通过了,但是没有具体的数据,就没有真的运行。
赚点分数不容易啊。
IDENTIFICATION DIVISION.
PROGRAM-ID. FILE-READ-WRITE.
ENVIRONMENT DIVISION.
IDENTIFICATION DIVISION.
PROGRAM-ID. FILE-READ-WRITE.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE ASSIGN TO S-SYSIN.
SELECT OUT-FILE ASSIGN TO S-SYSOUT.
DATA DIVISION.
FILE SECTION.
FD IN-FILE
LABEL RECORD IS STANDARD.
01 IN-RECORD.
05 IN-ID PIC 9(11).
05 IN-NAME PIC X(20).
FD OUT-FILE
LABEL RECORD IS STANDARD.
01 OUT-RECORD.
05 OUT-ID PIC 9(11).
05 OUT-NAME PIC X(20).
WORKING-STORAGE SECTION.
01 EOF-FLAG PIC X VALUE 'N'.
PROCEDURE DIVISION.
OPEN INPUT IN-FILE
OUTPUT OUT-FILE.
PERFORM 100-WRITE-RECORDS
UNITL FOF-FLAG = 'Y'.
CLOSE IN-FILE
OUT-FILE.
STOP RUN.
100-WRITE-RECORDS.
READ IN-FILE
AT END MOVE 'Y' TO EOF-FLAG
END-READ.
MOVE IN-ID TO OUT-ID
MOVE IN-NAME TO OUT-NAME
WRITE OUT-RECORD.
本来我截图两张的,但是第二章不知道怎么传上来了。就这样吧。
你加偶qq的话,偶可以教你,哈哈
因为你这个标题太笼统了,不晓得具体是检索什么数据
要是这个sysin是普通文件,就只需要写一个PERFORM循环,通过条件判断输出到另一个文件就好了。
如果这个sysin是放在数据库中的,就需要定义一个游标来处理了,处理方法和文件一样。