ローカル・プロジェクトおよびローカル・ファイルのライブラリーの定義
エディタで開いているローカルのAssembler、 COBOL、 PL/I、JCL、および REXX ファイルにおいて、リアルタイムの構文チェックやファイル操作に使用できるローカルまたはリモートのライブラリを定義できます。 このトピックでは、 COBOL、 PL/I、JCL、および REXX ファイルに対して、ローカルおよびリモートライブラリを定義する方法について説明します。 High Level Assembler ファイルの場合、HLASMエディタとz Systems® LPEXエディタでは、コピーファイルやマクロファイルの検索方法およびサポート方法が異なります。 2つのエディタのライブラリ定義の概要については、 HLASMファイルのコピーとマクロライブラリサポートを参照してください。
始める前に
ローカルの COBOL、 PL/I、JCL、または REXX ファイルに対してローカルプロパティグループを定義するか、既存のローカルプロパティグループを、リアルタイム構文チェックやコピーブック/インクルードファイルのオープンなどの操作を実行したいファイルに関連付けます。ローカルのソースファイルにあるコピーブック、インクルードファイル、およびプロシージャへのアクセスを必要とする操作を実行する場合、エディタはプロパティグループの設定に基づいてファイルの場所を特定します:
- ローカルファイルの検索には、 SYSLIB フィールド(INCLUDE文用) およびPROCLIB フィールド(PROC文用)、あるいは COBOL または PL/I ファイルの場合は「 ローカルコンパイラオプション」 ページの環境変数フィールド、JCLファイルの場合は 「ローカルJCLオプション」 (JCLエディタのみ)ページ、 REXX ファイルの場合は「 ローカル REXX オプション 」ページが使用されます。 これらのフィールドには、コピーブック、インクルードファイル、マクロ、またはプロシージャを検索するためのローカルファイルパスの順序付きリストを指定します。
- COBOL の場合は 「Copy Libraries 」ページ、 PL/I または REXX の場合は「 Include Libraries 」ページ、JCLの場合は 「Remote JCL Options 」ページを使用して、リモートコピーファイル、インクルードファイル、およびプロシージャファイルを特定します。
エディターは、以下の順序でこれらのライブラリーを検索します。
- プロパティー・グループにローカル・ライブラリーとリモート・ライブラリーの両方が定義されている場合、エディターはローカル・ライブラリーを最初に検索してからリモート・ライブラリーを検索します。
- ローカル・ライブラリーが定義されていない場合、エディターはリモート・ライブラリーのみを検索します。
- リモート・ライブラリーが定義されていない場合、エディターはローカル・ライブラリーのみを検索します。
ローカル・ライブラリーの定義
- ライブラリーを定義するには、以下のようにします。
- z/OS Projects ビ ュ ーで、 ロ ーカルプ ロ ジ ェ ク ト ま たはフ ァ イ ルを右 ク リ ッ ク し、 をク リ ックします。 プロパティー・グループ・エディターが開きます。
- エディタの下部にある「 COBOL 」、「 PL/I 」、 「JCL」、または「 REXX 」タブをクリックします。
- ローカルライブラリを設定するには、左側のカテゴリ一覧から 「ローカルコンパイラオプション 」、「 ローカルJCLオプション (JCLエディタのみ)」、または「 ローカル REXX オプション」 を選択してください。
- SYSLIB では、ライブラリのローカルファイルパスを指定してください。 JCLファイルについては、 PROCLIB フィールドを使用して、JCLプロシージャの定義が含まれるローカルライブラリを指定します。 SYSLIB 以外のローカル・ライブラリーを指定するには、「環境変数」フィールドを使用します。ヒント:
「フォルダーの追加」
ウィンドウは、**/COPY などのグローバル・パターンをサポートします。 グローバル・パターンを入力するには、 「テキスト入力」 をクリックし、テキスト・ペインにフォルダー検索ストリングを入力します。 1 行に 1 つのグローバル・パターンを入力します。
リモート・ライブラリーの定義
ローカル・プロジェクトまたはファイルに対してリモート・ライブラリーを定義すると、そのプロジェクトまたはファイルに対する次のアクションまたは機能が使用不可になります。
- リモート依存関係の表示
- ローカル・プリプロセッサー・サポート
- リモート・ライブラリを設定するには、左側のカテゴリ・リストからコピー・ライブラリ、 インクルード・ライブラリ、 リモートJCLオプション (JCLエディタのみ)、またはリモート・ ライブラリを選択します。
- 「接続名」リストからリモート・システムを選択します。
- 「追加」、「編集」または「除去」をクリックして、コピー・ライブラリーまたはインクルード・ライブラリーを表に追加したり、表の項目を編集したり、表から項目を除去したりします。 「追加」または「編集」をクリックすると、ライブラリー名とデータ・セット名の入力を求めるウィンドウが開きます。
- 「ライブラリー名」フィールドに、ライブラリーの名前を入力します。 例えば、SYSLIB と入力します。 JCLプロシージャの定義では、ライブラリ名として PROCLIBを指定してください。 JCLエディタは、PROCLIBライブラリを使用してPROCの参照を解決します。
- テーブルには 1 つの SYSLIB 項目のみを含めることができます。
- テーブルにはMACLIBエントリーを1つだけ持つことができる。注: ZAPP ファイルにエクスポートされる HLASM プロパティグループの場合、ローカルの HLASM プロパティグループ内の 「リモートマクロライブラリ 」および「 リモートコピーライブラリ 」は、異なる方法で処理されます。 「リモートマクロライブラリ 」テーブルに 「MACLIB」 というライブラリ名を持つエントリのみが、マクロライブラリとしてエクスポートされます。 「リモートコピーライブラリ」テーブルにライブラリ名「MACLIB」として登録されているエントリは、エクスポート時に無視されます。 「 Remote Copy Libraries 」テーブル内のその他のすべてのエントリはエクスポートされ、ZAPP ファイルからプロパティグループが生成された際に、コピーライブラリとして利用可能になります。
- このテーブルでは、以下の例のように、ライブラリーの SYSLIB 以外の名前を指定することができます。 エディターは、SYSLIB ではなく、MYLIB に定義された区分データ・セットを検索します。 COBOL または PL/I のコードに次のステートメントがある場合、このフィールドを使用して、ライブラリー名 MYLIB を定義することができます。
- COBOL の例:
COPY MYFILE OF MYLIB. - PL/I の例:
%INCLUDE MYLIB (MYFILE);
- COBOL の例:
- ライブラリ名が JCLLIB に設定され、パスが ** として指定されている場合、システムはJCL JOBカードで定義されたデータセットを使用してインクルード・ライブラリを検索します。 検索順序は以下の通りです
- JCLLIB
- JOBLIB
- PROCLIB
- SYS1.PROCLIB
- このシステムは、これらのステートメントで指定されたデータセットを抽出および検索します。 同じJOBカード内の SETステートメントで宣言された変数を使用してデータセット名が参照された場合、検索を実行する前に変数が解決されます。
- 「ライブラリー・パス」フィールドに 1 つ以上の検索対象の区分データ・セット名を入力して、「OK」をクリックします。 複数のデータ・セット名は、次の例のようにスペースで区切ります。 エディターは、リストされた順序でデータ・セットを検索します。
以下の画面キャプチャーは、ローカル・プロジェクトに定義されたリモート・コピー・ライブラリーの例を示しています。
