関数

パブリック カタログ API で使用できる関数について説明します。

COBOL コピーブック mfpubcat.cpy および PL/I インクルード メンバー mfpubcat.inc には、API を呼び出す際に関数フィールド (FUNC) を設定するために使用できる定数の宣言が含まれています。これらは、コピーブックでは FUNC フィールドの直後にある 78 レベルのフィールドで宣言され、インクルード メンバーではインターフェイス構造の直後に宣言されています。

サポートされる関数は次のとおりです。

関数コード 説明
ALLC インターフェイス領域で指定された値を使用して、カタログに新しいレコードを挿入します。関連付けられた物理ファイルがまだ存在しない場合は、環境変数 MFALLOC_PCFILE が N に設定されている場合を除き、関連付けられた物理ファイルを割り当てます。
DLET Delete。インターフェイス領域で指定された DSN に基づいてカタログからレコードを削除し、関連付けられた物理ファイルを削除します。
GCFE Get Catalog File Errors。発生した最初のカタログ ファイル エラーを返します。
GCFS Get Catalog File Status。最初のカタログ ファイルまたは ()-cat-file-number (mfpubcat.cpy を参照) で指定されたカタログ番号のファイル ステータスの詳細を返します。
GETC Get Cluster。VSAM クラスター要素 (代替索引やデータセット名など) を渡すと、その要素が属するクラスターを返します。
GN Get Next。DSN 索引に基づいて次のカタログ レコードを取得します。現在の位置がまだ確立されていない場合は、結果は不定となります。
GNFE Get Next Catalog File Error。次のカタログ ファイル エラーを取得します。GCFE は、前回のリストで発生したすべてのカタログ ファイル エラーを取得し、そのうちの最初のエラーを返します。その後に GNFE を呼び出すと、リストが反復処理されます。
GNFS Get Next File Status。次のカタログ ファイル ステータスを取得します。GCFS は、すべてのカタログ ファイル ステータス レコードを取得し、そのうちの最初のレコードを返します。その後に GNFS を呼び出すと、すべてのカタログ ファイル ステータスが反復処理されます。
GNPC Get Next PCDSN。PCDSN 索引に基づいて次のカタログ レコードを取得します。現在の位置がまだ確立されていない場合は、結果は不定となります。
GP Get Previous。現在の位置がまだ確立されていない場合は、結果は不定となります。
GU Get Unique。インターフェイス領域で指定された DSN に関連付けられているレコードを取得します。
GUPC Get Unique PCDSN。インターフェイス データで指定された PCDSN に関連付けられているレコードを取得します。
ISRT インターフェイス領域で指定された値を使用して、カタログに新しいレコードを挿入します。関連付けられた物理ファイルがまだ存在しない場合は、環境変数 MFALLOC_PCFILE が N に設定されている場合を除き、ファイルの場所がデフォルトで割り当てられるデータ セットの場所であれば、関連付けられた物理ファイルを割り当てます。
REN Rename。既存のカタログ レコードのデータセット名を変更します。
REPL Replace。インターフェイス領域で指定された置換値を使用して、既存のカタログ レコードを更新します。「」を参照してください。
STN> Start Not Greater Than。インターフェイス領域の DSN フィールドの値に基づいてカタログ内の位置を確立します。この値のレコードが存在する必要はありません。
STN< Start Not Less Than。インターフェイス領域の DSN フィールドの値に基づいてカタログ内の位置を確立します。この値のレコードが存在する必要はありません。
STNE Start Not Greater Than (STN> と同じ)、[Disable Additional Qualifiers] をオン。ESMAC カタログ リスト ページで [Disable Additional Qualifiers] を選択した場合と同じ機能になります。
STNI Start Not Greater Than、エラーを無視。STN> と同じですが、カタログ エラーを無視してレコードをリストします。リストの最後に GCFE 呼び出しを使用してエラーを取得します。

注:

上記のいずれかの関数を実行するデータ セットをワイルドカードを使用して識別する場合、データ セット名の条件が 44 文字以上のときは、条件の最初の文字として * ワイルドカードを使用してください。

データ セットが開かれた後は、ジョブ ステップに現在割り当てられているデータ セットの変更 (削除を含む) は実行できません。実行しようとすると、MVSCATPB から retcode 78-RET-VALIDATE-ERROR (20) および理由コード 78-dataset-in-use (19) が返されます。

REPL 関数を使用してデータ セットの DSORG を更新する際、変更が適切であるかどうかが検証されるようになりました。適切でない場合は、戻りコード 78-RET-VALIDATE-ERROR (20) および理由コード 78-MISMATCHED-DSORG (50) が生成されます。