内部データ値の変更 - 入力パラメーター (出口ポイント 2)

特定の COBOL プログラムの連絡節項目について、クライアント要求によって提供された内部値をオーバーライドできます。

構文:

typedef cblt_rtncode (*PFI_IDP_EXIT)(mf_uns32      exit_point,
                                     IDP_EXIT_INFO *exit_info);

入力パラメーター:

exit_point
2 = 内部データ値の変更 - 入力パラメーター
exit_info
version 構造体形式のバージョン
flags 0
data_size data_ptr で指定されるデータのサイズ
ext_value_size ext_value で指定されるデータのサイズ
funcs ユーザー出口サポート関数
field_name COBOL プログラムの連絡節のデータ項目名
data_ptr field_name に関連付けられた内部データの値
ext_param_name 外部パラメーターの名前
ext_value field_name に関連付けられた外部データの値
request_cxt 要求コンテキスト
exit_data ユーザー出口に固有のデータ

出力パラメーター:

exit_info
exit_data ユーザー出口に固有のデータ

戻りコード:

IDP_EXIT_CONTINUE
0 = デフォルトのパラメーター マッピングで継続します。
IDP_EXIT_STOP
1 = マッピング処理を終了します。サービスは起動されません。エラー応答が必要です。
IDP_EXIT_HANDLED
2 = 出口処理は与えられた内部の値を上書きしました。

説明:

この出口処理により、COBOL プログラムの特定の連絡節のデータ項目名について、クライアント要求から与えられた外部データ値からの要求ハンドラーのマッピングで作成された内部データ値を上書きできます。data_ptr は、連絡節の一部としてユーザー プログラムに渡される要求ハンドラーで作成されたメモリを指します。出口処理がこのパラメーターを上書きすることを選択すると、data_ptr から data_size バイト分のみを変更し、IDP_EXIT_HANDLED を返す必要があります。

ユーザー出口プログラムは、IDP_EXIT_INFO 構造体の exit_data フィールドを所有します。通常、この情報を出口ポイントの起動間のコンテキスト情報を保持するために使用します。IDP_EXIT_ 戻り値を返す場合に、この情報を使用できます。