ILARRAYPROPERTY

PROPERTY 句と OCCURS 句を含んでいるデータ項目、またはPROPERTY 句を含み OCCURS 句をともなうグループ項目に従属するデータ項目について、これらのデータ項目のコードをコンパイラが生成する方法を制御します。
制限事項:この指令はマネージ COBOL のみでサポートされます。

構文:

>>----ILARRAYPROPERTY(integer)-----------><

パラメータ:

integer
0

プロパティは、データ要素のタイプによって決まるタイプで生成されます。このプロパティには、データ項目の次元と同じ多数のパラメータがともないます。これらのプロパティには COBOL を使用してのみアクセスできます。C# や Visual Basic などの他の言語は、パラメータをともなうこのようなプロパティへのアクセスを許可しません。この設定を使用して、この製品の旧バージョンにより生成されたコードを作成します。

1
ネイティブのマネージ・タイプの 01 レベルの配列は、シンプルなプロパティとして生成され、そのタイプは配列のタイプ (要素タイプではない) です。これらのプロパティには、他の言語を使用してアクセスできます。OCCURSをともなうかまたは OCCURS に従属する他のデータ項目は、ILARRAYPROPERTY(0) のデータ項目として生成されます。
2
ILARRAYPROPERTY(1) と同様ですが、非ネイティブ配列のプロパティによってそのプロパティの GET と SET アクセス機構(プロパティ自体ではない)が生成される点が異なります。これにより、Visual Basic プログラムが (そのアクセス用メソッドによって) プロパティにアクセスできるようになります。

プロパティ:

省略値: ILARRAYPROPERTY(1)

例:

次のデータ構造について検討します。
data division.
working-storage section.
01 n1 string OCCURS 10 PROPERTY.
01 group1.
	03 n2 PIC X(9) OCCURS 10 PROPERTY.
  • ILARRAYPROPERTY(0) では、n1 と n2 は両方ともタイプ文字列のプロパティとして公開され、int パラメータが必要なオカレンスを示します。
  • ILARRAYPROPERTY(1) では、n2 は上記のように公開されますが、n1 はタイプ string[ ] のプロパティとして公開されます (C# の表記)。
  • ILARRAYPROPERTY(2) では、n1 は ILARRAYPROPERTY(1) のように公開される一方、n2 では、コンパイラがアクセス用メソッド get_n2(int) (戻り文字列) と set_n2(文字列、int) を生成しますが実際のプロパティは生成しません。