13.4.14 LINE NUMBER句(WINDOW SECTION)
- 形式
-
書き方3
書き方4
- 機能
-
LINE NUMBER(行番号)句は,画面上での行番号を指定する。
一般規則
-
書き方3のLINE NUMBER句は,01〜49のどんなレベルに書いてもよい。集団項目に書くと,その集団に従属するすべての基本項目にそのLINE NUMBER句を適用する。
-
書き方4のLINE NUMBER句は,77レベル記述項およびPICTURE句のない基本項目に指定する。
-
各整数は符号のない1〜3けたの数字でなければならない。整数は画面の行番号を指定する。画面の最初の行番号は1であり,最後の行番号はWindows COBOL2002では120,UNIX COBOL2002では24である。
書き方3
-
整数4は絶対行番号を示す。次の規則を適用する。
-
整数4の値はWindows COBOL2002では0または1〜120,UNIX COBOL2002では0または1〜24であること。0を指定した場合,そのフィールドは画面入出力命令の対象外となる。
(例)0を指定した場合
01 MAP0. 02 MAP1 LINE 10〜.…(1) 03 F1 COLUMN 10〜. 03 F2 COLUMN 15〜. 02 MAP2 LINE 10 COLUMN 40〜.…(5) 02 MAP3 LINE PLUS 5 COLUMN 50〜.…(6) (1)を”02 MAP1 LINE 0”にすると次のようになる。 PROCEDURE DIVISION. : MOVE SPACE TO MAP1. …(2) : DISPLAY MAP0 UPON WINDOW.…(3) : ACCEPT MAP1 FROM WINDOW.…(4) (2) MAP1にSPACEが設定される。 (3) MAP1は対象外のため表示されない。
(4)は対象となるフィールドがないため何も実行しない。 ただし,次のようになる。 ・WINDOW-STATUS:00 ・WINDOW-KEY :00 ・フィールドステータス:OFF (6)のようにPLUS指定がある場合,(5)を”02 MAP2 LINE 0 COLUMN 40.” とし,MAP2のフィールドを対象外とすると,(6)のMAP3のフィールドも 対象外となる。
(例)書き方3のデータ名の指定例
WORKING-STORAGE SECTION. 77 I PIC 9(3). : WINDOW SECTION. 01 GAMEN LINE I. 02 A OUTPUT COLUMN 10 PIC X(3). : MOVE 5 TO I. MOVE 'ABC' TO A. DISPLAY GAMEN UPON WINDOW. MOVE 10 TO I. MOVE 'XYZ' TO A. DISPLAY GAMEN UPON WINDOW.
-
一つの01レベルの集団で,絶対行番号の値は任意の順序で書いてもよいし,同じ値のものを書いてもよい。ただし,上の行から下の行へ順に指定するのが一般的な書き方である。
-
一つの01レベルの集団で最初のLINE NUMBER句には,絶対行番号を指定すること。
-
-
整数5は相対行番号を示す。次の規則を適用する。
-
整数5の値はWindows COBOL2002では1〜119,UNIX COBOL2002では1〜23でなければならない。
-
整数5を指定したときの行番号は,直前の行番号に整数5の値を加えた位置となる。
行番号はWindows COBOL2002では120,UNIX COBOL2002では24を超えてはならない。
(例)絶対行番号と相対行番号の指定
01 A. (行番号) 02 B LINE 10〜. 10行 02 C LINE PLUS 2〜. 12行 02 D LINE PLUS 5 〜. 17行 02 E LINE 20〜. 20行
行番号は,Windows COBOL2002では119以下,UNIX COBOL 2002では23以下の値で指定する。
-
-
データ名は行番号を可変に定義することを示す。
次の規則を適用する。
-
データ名は修飾してもよいが,添字付けおよび部分参照をしてはならない。
-
データ名は整数項目であること。
-
データ名の値はWindows COBOL2002では1〜120,UNIX COBOL2002では1〜24でなければならない。それ以外の値のときは,実行時に行カラム番号不正で実行時エラーとなる。
-
データ名を指定した項目の上位に,REPEAT LINE句およびREPEAT COLUMN句があってはならない。
-
データ名を指定した項目の下位に,REPEAT COLUMN句があってはならない。
-
-
上位と下位のレベルに同時にLINE NUMBER句またはREPEAT LINE句を書いてはならない。
-
すべての基本項目はLINE NUMBER句を含むか,またはこの句(もしくはREPEAT LINE句)を含む集団項目に従属していなければならない。
書き方4
-
書き方4のLINE NUMBER句は,画面に引くけい線の行番号を指定する。この句とRULE LINE句およびCOLUMN NUMBER句を組み合わせて自由なけい線を引ける。さらに,特定のフィールドに関係しないフィールド属性を定義するときも,その行番号を指定する。
-
各整数の値はWindows COBOL2002では1〜120でなければならない。ただし,整数6は0でもよい。UNIX COBOL2002では1〜24でなければならない。ただし,整数6は0でもよい。0を指定した場合,そのフィールドは画面入出力文の対象外となる。また,次に示す大小関係を満足しなければならない。
整数6<整数7<整数8<整数9・・・
-
けい線の引き方を次に示す。なお,整数6,整数7に関する規則は,整数8,整数9およびこれらの繰り返しにも適用する。
●整数6と整数7を指定した場合
-
横けい線(上または下)は,整数6の行番号から整数7の行番号までのすべての行に引く。
(注意)
THROUGH指定をして横けい線を引くのは一般的な使い方ではない。
-
縦けい線は,整数6の行番号から整数7の行番号まで引く。
(例)縦けい線の指定
●整数6だけを指定した場合
-
横けい線(上または下)は,整数6の行番号に引く。横けい線のカラム番号はCOLUMN NUMBER句で指定する。
(例)横けい線の指定例
-
縦けい線は整数6の行番号に引く。
(注意)
THROUGH指定を省略して縦けい線を引くのは一般的な使い方ではない。
-
-
PICTURE句のない基本項目はLINE NUMBER句を含むか,またはこの句を含む集団項目に従属していなければならない。