COBOL2002 言語 拡張仕様編

[目次][索引][前へ][次へ]

1.6.2 GROUP-USAGE句(日本語機能)

形式
[図データ]

機能
GROUP-USAGE句にNATIONALを指定したものは,記述項の左辺で定義される集団項目の扱いが特に指定のない限り,用途がNATIONALで項類が日本語の基本項目になることを指定する。

構文規則
  1. GROUP-USAGE句は,記述項の左辺が集団項目でなければならない。
  2. NATIONAL指定がある場合,記述項の左辺にはUSAGE NATIONALが仮定される。ただし,記述項の左辺にUSAGE句を指定してはならない。記述項の左辺に従属している基本項目はすべて日本語項目または日本語編集項目のどちらかでなくてはならない。従属している集団項目はすべて明示的にまたは暗黙的にGROUP-USAGE NATIONALと記述されている必要がある。
    注※
    -JPN,Alnumオプションまたは-JPN,V3JPNオプションが有効な場合,記述項の左辺にUSAGE NATIONALは仮定しない。
  3. GROUP-USAGE句が指定された集団項目およびその従属項目に,TYPE句およびSAME AS句を指定してはならない。

    表1-3 GROUP-USAGE句とTYPE句またはSAME AS句との組み合わせ

    TARGETの条件 TARGETにTYPE句を指定 TARGETにTYPEDEF句を指定 TARGETにSAME AS句を指定 SAME ASで参照するデータ名1としてTARGETを指定
    GROUP-USAGE句の指定がある集団項目

    (例)
    01 TARGET 〜
      GROUP-USAGE NATIONAL.
      03 DATA1 〜.
    組み合わせて使用できない。
    GROUP-USAGE 句の指定がある集団項目の従属項目

    (例)
    01 GRP-N
      GROUP-USAGE NATIONAL.
      03 TARGET 〜.
    組み合わせて使用できない。 01レベル以外にTYPEDEF句を指定できない。 組み合わせて使用できない。 TARGETが集団項目の場合,組み合わせて使用できない。
    TARGETが基本項目の場合,組み合わせて使用できる。
    GROUP-USAGE 句の指定がある集団項目を従属項目に持つ集団項目

    (例)
    01 TARGET.
      03 
      GROUP-USAGE NATIONAL.
        05 DATA1 〜.
    TYPE句を指定した項目の下位にデータ項目は定義できない。 組み合わせて使用できない。 SAME AS句を指定した項目の下位にデータ項目は定義できない。 組み合わせて使用できない。
  4. 可変長集団項目またはその従属項目にGROUP-USAGE句を指定してはならない。
  5. CHARACTER TYPE句の指定がある項目を含むレコード記述項中に,GROUP-USAGE句を指定してはならない。
  6. 画面節(SCREEN SECTIONおよびWINDOW SECTION),報告書節,およびサブスキーマ節の記述項に,GROUP-USAGE句を指定してはならない。
  7. 画面節(SCREEN SECTION)による画面機能のACCEPT文またはDISPLAY文の一意名に,GROUP-USAGE句を含む集団項目を指定してはならない。
  8. CSVファイルのレコード記述項にGROUP-USAGE句を含んでいてはならない。
  9. CSVファイル入出力機能のACCEPT文またはDISPLAY文の一意名に,GROUP-USAGE句を含む集団項目を指定してはならない。
  10. CSVファイル入出力機能のWRITE文のFROMに指定した一意名に,GROUP-USAGE句を含む集団項目を指定してはならない。
  11. CSVファイル入出力機能のREAD文のINTOに指定した一意名に,GROUP-USAGE句を含む集団項目を指定してはならない。

一般規則
  1. NATIONAL指定を書いた場合
    (a)記述項の左辺は日本語集団となり,その字類と項類は日本語となる。
    (b)特に指定がない限り日本語集団は,一個の基本データ項目であるかのように扱われる。その用途はNATIONALで字類と項類は日本語であり,記述はPICTURE N(m)となる。ここで,mはその集団の長さである。
    (c)-JPN,Alnumオプションが有効な場合,記述項の左辺は英数字集団となる。-JPN,Alnumオプションについては,マニュアル「COBOL2002 ユーザーズガイド」を参照のこと。
    (d)-JPN,V3JPNオプションが有効な場合,記述項の左辺は英数字集団となる。ただし,STRING文,UNSTRING文,INSPECT文,LENGTH関数で参照するときは,日本語項目であるかのように扱われる。また,部分参照の字類と項類は英数字とするが,最左端の文字位置と長さは日本語文字数を表す。-JPN,V3JPNオプションについては,マニュアル「COBOL2002 ユーザーズガイド」を参照のこと。

    GROUP-USAGE NATIONALの指定が必要とされる理由は,日本語だけを含む集団に対して,切り捨てや日本語の空白詰めが適正に行えるようにする,およびINSPECT等の操作が間違いなく行えるようにするためである。GROUP-USAGE NATIONALの指定がないとすると,そのような集団項目の内容は,項類が英数字の扱いが半角文字列となってしまうので,データの砕裂や不正操作を招くおそれが高い。
  2. 強く型付けされていない集団項目に対して,GROUP-USAGE句の指定も仮定もなければ,その集団項目は英数字集団項目となる。