例題
[C5573.cob] 000001 IDENTIFICATION DIVISION. 000002 CLASS-ID. C5573. 000003 IDENTIFICATION DIVISION. 000004 OBJECT. 000005 ENVIRONMENT DIVISION. 000006 INPUT-OUTPUT SECTION. 000007 FILE-CONTROL. 000008 SELECT OUTFILE ASSIGN TO SYS001. 000009 DATA DIVISION. 000010 FILE SECTION. 000011 FD OUTFILE. 000012 01 OUTDATA PIC X(80). 000013 WORKING-STORAGE SECTION. 000014 PROCEDURE DIVISION. 000015 IDENTIFICATION DIVISION. 000016 METHOD-ID. M5573 PROTOTYPE. 000017 PROCEDURE DIVISION. 000018 END METHOD M5573. 000019 END OBJECT. 000020 END CLASS C5573.
[M5573.cob] 000001 IDENTIFICATION DIVISION. 000002 METHOD-ID. M5573 OF C5573. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 CLASS C5573. 000007 DATA DIVISION. 000008 WORKING-STORAGE SECTION. 000009 01 DATAM PIC X(80). 000010 PROCEDURE DIVISION. 000011 OPEN OUTPUT OUTFILE. 000012 MOVE "FILE ERROR" TO DATAM. 000013 WRITE OUTDATA FROM DATAM AFTER ADVANCING 10 LINE. 000014 CLOSE OUTFILE. 000015 EXIT METHOD. 000016 END METHOD M5573.
M5573.cob 13: JMN5573I-S ファイルの編成が矛盾しています.ADVANCING指定のあるWRITE文は無効になります.
詳細な説明
クラス定義に含まれないメソッド定義(分離されたメソッド定義)の手続き部で,ファクトリ定義またはオブジェクト定義で宣言したファイルに対するWRITE文にADVANCING指定を書く場合,以下のいずれかの条件を満たしていなければなりません.
そのファイルに対し,ASSIGN句でPRINTERまたはPRINTER-n(nは1~9までの整数)が指定されている
そのファイルを定義したソース単位に含まれるソース要素に,そのファイルに対するADVANCING指定付きのWRITE文が指定されている
そのファイルがFORMAT句付き印刷ファイルである