- 一般規則
- REPEAT LINE句は,01レベルを除く集団項目に指定できる。
- REPEAT LINE句を指定した記述項に従属する項目には,REPEAT LINE句を指定してはならない。
- PC COBOL2002では整数1,整数2および整数3は符号のない1〜3けたの数字で,その値は1〜120でなければならない。ただし,書き方2の整数4は,0〜118でなければならない。
UNIX COBOL2002では整数1,整数2および整数3は符号のない1〜2けたの数字で,その値は1〜24でなければならない。ただし,書き方2の整数4は,0〜22でなければならない。
- REPEAT LINE句を書いた記述項のデータ名を参照するときには,添字を付けなければならない。さらに,これに従属するデータ項目の名前を参照するときにも添字を付けなければならない。添字の付け方は表操作機能と同じである。
(例)添字の付け方
02 A REPEAT LINE 5 THRU 7.
03 B PIC 〜
03 C PIC 〜
03 D PIC 〜
- データ名を参照するときには次のように添字を付ける。
- DISPLAY A(1) UPON WINDOW.
- MOVE NC '商品名' TO C(I).
- REPEAT LINE句を含む記述項に従属する記述項には,SOURCE句を書いてはならない。
- 書き方1
- REPEAT LINE句を書いたデータ項目およびそれに従属する項目には,LINE NUMBER句を書いてはならない。また,上位レベルにLINE NUMBER句を書いてはならない。
(例)REPEAT LINE句の正しい書き方
01 A.
02 B REPEAT LINE 〜. …正しい
03 C PIC 〜
02 D REPEAT LINE 〜. …正しい
03 E PIC 〜
- (例)REPEAT LINE句の誤った書き方
01 A.
02 B REPEAT LINE 〜.
03 C REPEAT LINE 〜. …誤り
04 D LINE NUMBER 〜 …誤り
- 整数1および整数2は,画面の行番号を指定する。集団項目にREPEAT LINE句を書くと,この集団に属するすべての基本項目を整数1の行番号から整数2の行番号まで繰り返して配置する。
(例)REPEAT LINE句を用いたフィールドの配置
02 A REPEAT LINE 5 THRU 10.
03 B PIC 〜
03 C PIC 〜
- BとCのフィールドを5行から10行までの各行に繰り返して配置する。
- 整数2は整数1より大きい値を指定しなければならない。
- 書き方2
- REPEAT LINE句を指定したデータ項目の下位には,LINE NUMBER句およびCOLUMN NUMBER句を指定しなければならない。このLINE NUMBER句で指定した行番号は,その項目が最初に現れる行番号となり,整数3の回数だけ繰り返して配置される。
- 整数4はREPEAT LINE句で繰り返す項目の間隔を指定する。整数3および整数4に従って配置した結果は,画面に収まる範囲内でなければならない。
- WITH指定を省略すると,整数4は0とみなす。
- REPEAT LINE句の下位に指定された最初のLINE NUMBER句およびCOLUMN NUMBER句は絶対指定でなければならない。
(例1)フィールドの配置
02 REPEAT 2 TIMES.
03 A LINE 6 COLUMN 5 〜.
03 B LINE PLUS 2 COLUMN 10 〜.
- AとBのフィールドを0行間隔で2回繰り返す。
- (例2)フィールドの配置
02 REPEAT 2 TIMES WITH 1.
03 A LINE 6 COLUMN 5 〜.
03 B LINE 8 COLUMN 10 〜.
- AとBのフィールドを1行間隔で2回繰り返す。
- (例3)フィールドの配置
02 REPEAT LINE 2 COLUMN TIMES.
03 A LINE 6 COLUMN 10 〜.
03 B LINE 6 COLUMN 20 〜.
- AとBのフィールドを0行間隔で2回繰り返す。これは,次のREPEAT句と同じ意味になる。
02 REPEAT LINE 6 THRU 7.
03 A COLUMN 10 〜.
03 B COLUMN 20 〜.
- (例4)フィールドの配置
02 REPEAT 2 TIMES WITH 2.
03 LINE 6.
04 A COLUMN 5 〜.
04 B COLUMN 10 〜.
03 C LINE 7 COLUMN 5 〜.
- AとBのフィールドとCのフィールドを2行間隔で2回繰り返す。