出口の作成
File Manager は、デフォルト I/O 出口を提供していません。データの処理に I/O 出口の使用を計画している場合は、ご使用のシステムに 1 つ以上提供する必要があります。また、FMN0POPT で USEIOX オプションを設定する必要があります。USEIOX オプションの詳細については、USEIOXを参照してください。
提供する出口はロード・モジュール形式でなければならず、File Manager で利用可能なロード・ライブラリーになければなりません。STEPLIB DD ステートメントに指定するか、あるいは LINKLIST または LPALIST に入れなければなりません。File Manager は出口のロードを試み、見つけることができない場合はエラー・メッセージが表示されます。
ユーザー出口は、任意の高水準言語 (例えば、COBOL、PL/I、高水準アセンブラー) で作成できます。COBOL、PL/I、および HLASM のサンプル出口が FMN.SFMNSAM1 に提供されています。以下のものがあります。
- FMNIOXEA
- サンプル HLASM 出口
- FMNIOXEC
- サンプル COBOL 出口
- FMNIOXEP
- サンプル PL/I 出口
- FMNIOXHF
- HFS を使用したサンプル HLASM 出口
COBOL、PL/I、および HLASM の I/O 出口制御ブロックを提供するコピーブックは、File Manager マクロ・ライブラリー FMN.SFMNMAC1 の中に入っています。以下のものがあります。
- FMNIOXCB
- HLASM プログラムの制御ブロック
- cc(FMNIOXC)
- COBOL プログラムの制御ブロック
- FMNIOXCP
- PL/I プログラムの制御ブロック
注:
- File Manager I/O 出口は、24 ビット・アドレッシング・モードをサポートしません。
- File Manager は、サポートされている任意のリリースの COBOL および PL/I で書かれた出口をサポートします。
- File Manager は、ユーザーの出口ルーチンで解釈できる、データ・セットに関する一般情報を戻します。出口制御ブロック内の一部のデータ (例えば、DSORG、RECFM) は、z/OS® システム制御ブロック内で使用されるデータによく似ています。このため、便宜上、COBOL コピーブック FMNIOXCC では、レベル 88 の値が定義されます。
- また、File Manager は HFS ファイルをシミュレートされた QSAM ファイルとして処理します。File Manager および HFS ファイルについて詳しくは、「File Manager for z/OS User’s Guide and Reference」の『UNIX™ システム・サービスおよび階層ファイル・システムの使用』を参照してください。出口ルーチン・レベルでは、大きな違いはありません。この場合、出口ルーチンは、データ・セット名ではなく、パス名へのアドレスを取得しますが、(シミュレートされた) レコードが処理される方法は変わりません。