SDF 配列

1 次元の SDF 配列を作成するには、次の操作を行います。

  1. フィールドを作成し、[Field Properties] ダイアログ・ボックスでそのフィールドに名前を付けます。
  2. フィールドを右クリックし、ポップアップ・メニューで [Make Horizontal Array] をクリックします。
  3. フィールドを右クリックし、ポップアップ・メニューで [Add Array Column] をクリックします。
  4. フィールドを右クリックし、ポップアップ・メニューで [Add Array Row] をクリックします。
  5. フィールドを右クリックし、ポップアップ・メニューで [Add Array Row] をクリックします。

画面上のフィールドは 2 次元配列で配置されているように見えますが、コピーブック・エントリでは 1 次元の SDF 配列が示されます。下図を参照してください。

生成される BMS マクロ・ファイルは、次のようになります。

SDFARR  DFHMSD LANG=COBOL,    -
MODE=INOUT,    -
STORAGE=AUTO,  -
TIOAPFX=YES,   -
TYPE=&&SYSPARM
SDFARR  DFHMDI SIZE=(24,80)
* FIELD
FIELD   DFHMDF LENGTH=4,      -
POS=(5,9)
* FIELD
FIELD2  DFHMDF LENGTH=4,      -
POS=(5,14)
* FIELD
FIELD3  DFHMDF LENGTH=4,      -
POS=(5,19)
* FIELD
FIELD6  DFHMDF LENGTH=4,      -
POS=(6,9)
* FIELD
FIELD5  DFHMDF LENGTH=4,      -
POS=(6,14)
* FIELD
FIELD4  DFHMDF LENGTH=4,      -
POS=(6,19)
* FIELD
FIELD9  DFHMDF LENGTH=4,      -
POS=(7,9)
* FIELD
FIELD8  DFHMDF LENGTH=4,      -
POS=(7,14)
* FIELD
FIELD7  DFHMDF LENGTH=4,      -
POS=(7,19)
DFHMSD TYPE=FINAL
END

最上位行の 2 番目のフィールドの SDF プロパティーを調べると、これが水平配列であることを確認できます。

  1. 最上位行の 2 番目のフィールドをダブルクリックします。
  2. [SDF] タブをクリックします。

これにより、そのフィールドは「Index 2 of 9」として表示されます。フィールドは画面の左から右に向かってカウントされます。

[Vertical Array] をオンにして配列を垂直配列にし、SDF プロパティをもう一度確認すると、今度はそのフィールドが「Index 4 of 9」として表示されます。この場合、フィールドは画面の上から下に向かってカウントされます。