IMPORT{(外部名)}
IMPORT キーワードは、定義しているデータ項目用の記憶域は別のモジュールで割 り振られますが、このモジュールでアクセスできることを指定します。外部名パラメーターを 指定する場合は、文字リテラルまたは定数でなければなりません。
自由形式定義では、
外部名 パラメーターに *DCLCASE を指定して、
項目の外部名が、大/小文字も含めて項目の名前と同じであることを指示できます。
外部名としての *DCLCASE の指定を参照してください。
名前はインポートされるものとして定義されていますが、その名前のエクスポート 定義が含まれているモジュールがプログラムの中にない場合には、連係時にエラ ーが起こります。 EXPORT{(外部名)}を参照してください。
定義仕様書の IMPORT キーワードは、データ項目をインポートするために 使用されますが、プロシージャー名のインポート には使用できません。プロシージャー名は、EXPORT キーワードがプロシージャー仕様書 に指定されているとき、プログラム内のすべてのモジュールに暗黙的に インポートされます。
IMPORT が指定された時には、次の制約事項が適用されます。
- データ項目を初期化することはできません (INZ キーワードは使用でき ません)。エクスポート・モジュールがデータに関するすべての初期化を管理します。
- インポート・フィールドをコンパイル時または実行時前配列またはテーブル 、あるいはデータ域として定義することはできません。(キーワード CTDATA、 FROMFILE、TOFILE、EXTFMT、PERRCD、および DTAARA を使 用することはできません。)
- エクスポート・モジュールで初期値が定義されているので、インポート・フ ィールドを RESET 命令コードに対する引数として指定することはできません。
- *ENTRY PLIST の中の PARM の結果のフィールドにインポート・フィールドを 指定することはできません。
- インポート・フィールドを基底付きとして定義することはできません (キー ワード BASED は使用できません)。
- このキーワードは名前のないデータ構造には使用できません。
- 使用できる他のキーワードは DIM、EXTNAME、LIKE、OCCURS、 および PREFIX だけです。
- 同じ外部フィールド名をモジュールごとに複数回指定することは できません。また、外部プロシージャー名として使用することもできません。
複数オカレンス・データ構造またはテーブルの場合には、各モジュールにオカレンス番号 またはテーブル指標のそれぞれ固有のコピーが入れられます。 オカレンス番号または 指標は各モジュールごとにローカルなものであるため、どのモジュールで の OCCUR または LOOKUP 命令もローカルな影響しか与えません。