Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


テーブルの初期化 (INITIALIZE)

1 つ以上の INITIALIZE ステートメントをコーディングすることにより、テーブルをロードできます。

例えば、以下に示す TABLE-ONE という名前のテーブルのそれぞれの基本数値データ項目に値 3 を移動するには、次のステートメントをコーディングできます。

INITIALIZE TABLE-ONE REPLACING NUMERIC DATA BY 3.

文字「X」を、TABLE-ONE のそれぞれの基本英数字データ項目に移動するには、次のステートメントをコーディングできます。

INITIALIZE TABLE-ONE REPLACING ALPHANUMERIC DATA BY "X".

INITIALIZE ステートメントを使用してテーブルを初期化するとき、テーブルはグループ項目として (つまり、グループ・セマンティクスで) 処理されます。すなわち、グループ内の基本データ項目が認識されて処理されます。 例えば、TABLE-ONE が、以下のように定義された英数字グループであるとしましょう。

01  TABLE-ONE.
  02  Trans-out  Occurs 20.
      05  Trans-code       Pic X    Value "R".
      05  Part-number      Pic XX   Value "13".
      05  Trans-quan       Pic 99   Value 10.
      05  Price-fields.
          10  Unit-price   Pic 99V  Value 50.
          10  Discount     Pic 99V  Value 25.
          10  Sales-Price  Pic 999  Value 375.
      . . .  
      Initialize TABLE-ONE Replacing Numeric Data By 3
                                     Alphanumeric Data By "X"

以下の表は、上記の INITIALIZE ステートメントの実行前および実行後に 20 個の 12 バイト・エレメント Trans-out(n) のそれぞれが含んでいる内容を示しています。

Trans-out(n) (実行前) Trans-out(n) (実行後)
R13105025375 XXb0303030031
  1. 記号 b は、ブランク・スペースを表します。

同様に INITIALIZE ステートメントを使用して、国別グループとして定義されたテーブルをロードできます。 例えば、上記の TABLE-ONEGROUP-USAGE NATIONAL 節を指定した場合で、 Trans-code および Part-numberPICTURE 節に X ではなく N が指定されている場合、以下のステートメントは、上記の INITIALIZE ステートメントと同じ効果を持つことになります (ただし、 TABLE-ONE のデータは代わりに UTF-16 でエンコードされます)。

Initialize TABLE-ONE Replacing Numeric  Data By 3
                               National Data By N"X"

REPLACING NUMERIC 句は、浮動小数点データ項目も初期化します。

INITIALIZE ステートメントの REPLACING 句を同様に使用して、テーブル内の基本データ項目 ALPHABETICDBCSALPHANUMERIC-EDITEDNATIONAL-EDITED、および NUMERIC-EDITED のすべてを初期化できます。

INITIALIZE ステートメントでは、値を可変長テー ブル (つまり、OCCURS DEPENDING ON 節を使用して定義されたテーブル) に割り当てることはできません。

例: データ項目の初期化

関連参照
INITIALIZE ステートメント (Enterprise COBOL 言語解説書)


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)