COBOL WRITE AFTER语法解析
在COBOL中,WRITE AFTER语法用于将数据写入文件的指定位置,而不是文件的末尾。它的语法如下:
WRITE record-name [BEFORE|AFTER identifier] [INVALID KEY imperative-statement] [NOT INVALID KEY imperative-statement] [END-OF-PAGE imperative-statement] [NOT END-OF-PAGE imperative-statement]
其中,record-name是要写入的记录名称。BEFORE和AFTER关键字用于指定将数据写入的位置,identifier是标识符,用于确定要写入的位置。INVALID KEY和NOT INVALID KEY子句用于处理写入操作中的错误情况。END-OF-PAGE和NOT END-OF-PAGE子句用于处理写入操作中的分页情况。
下面是一个使用WRITE AFTER语法的示例:
FILE SECTION. FD SALES-FILE. 01 SALES-RECORD. 05 CUSTOMER-NAME PIC X(20). 05 CUSTOMER-ID PIC 9(5). 05 SALES-AMOUNT PIC 9(7)V99.
DATA DIVISION. WORKING-STORAGE SECTION. 01 TEMP-RECORD. 05 TEMP-NAME PIC X(20). 05 TEMP-ID PIC 9(5). 05 TEMP-AMOUNT PIC 9(7)V99.
PROCEDURE DIVISION. MAIN-PROCEDURE. MOVE "John Doe" TO TEMP-NAME MOVE 12345 TO TEMP-ID MOVE 1000.50 TO TEMP-AMOUNT
OPEN OUTPUT SALES-FILE
WRITE SALES-RECORD BEFORE TEMP-ID
CLOSE SALES-FILE
STOP RUN.
在上述示例中,我们首先将要写入的数据存储在TEMP-RECORD中。然后,我们使用WRITE AFTER语法将TEMP-RECORD的内容写入SALES-FILE文件中,在TEMP-ID之前的位置。最后,我们关闭文件并停止程序的运行
原文地址: http://www.cveoy.top/t/topic/hQxm 著作权归作者所有。请勿转载和采集!