MC_RECEIVE_LOG_DATA

この MC_RECEIVE_LOG_DATA を使用すると、ユーザーは登録して、受信関数管理ヘッダー 7 (FMH7) エラー レポートに関連付けられているログ データを受信できます。 動詞はバッファーを APPC に渡し、受信したログ データは、そのバッファーに配置されます。 APPC は、連続する FMH7 が別のバッファーで提供されるまで (つまり、トランザクション プログラム (TP) が別の MC_RECEIVE_LOG_DATA を発行して別のバッファーを指定するか、バッファーを指定しないまで) 到着すると、このバッファーを引き続き使用します。

TP 自体は、バッファーの割り当てと解放を担当します。 バッファーが APPC に渡された後、TP は新しいバッファーまたは長さ 0 のバッファーを指定して別の MC_RECEIVE_LOG_DATA を発行するか、会話が完了するまで待って元のバッファーを解放する必要があります。

FMH7 を受信すると、APPC は関連付けられているエラー ログ汎用データ ストリーム (GDS) をバッファーにコピーします。 関連するエラー ログ変数がない場合、バッファーはゼロアウトされます。受信動詞からのリターン コードがエラーを受信したと示す場合は常に、バッファーを確認する必要があります。

次の構造体は、 動詞で使用される動詞制御ブロック (VCB) MC_RECEIVE_LOG_DATA します。

構文

  
struct mc_receive_log_data {  
    unsigned short      opcode;  
    unsigned char       opext;  
    unsigned char       reserv1;  
    unsigned short      primary_rc;  
    unsigned long       secondary_rc;  
    unsigned char       tp_id[8];  
    unsigned long       conv_id;  
    unsigned short      log_dlen;  
    unsigned char FAR * log_dptr;  
};   

メンバー

opcode
指定されたパラメーター。 動詞の操作コードを指定AP_M_RECEIVE_LOG_DATA。

opext
指定されたパラメーター。 動詞の操作拡張機能を指定AP_MAPPED_CONVERSATION。

reserv1
予約済みフィールド。

primary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるプライマリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

secondary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるセカンダリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

tp_id
指定されたパラメーター。 ローカル TP を識別します。 このパラメーターの値は、呼び出し元の TP TP_STARTED、または呼び出された TP のRECEIVE_ALLOCATEによって返されます。

conv_id
指定されたパラメーター。 会話識別子を提供します。 このパラメーターの値は、呼び出し元の TP MC_ALLOCATE、または呼び出された TP のRECEIVE_ALLOCATEによって返されます。

log_dlen
指定されたパラメーター。 APPC がバッファーに配置できるログ データの最大長 (つまり、バッファー サイズ) を指定します。 範囲は 0 ~ 65535 です。 ここでの長さが 0 の場合は、動詞の前の MC_RECEIVE_LOG_DATAを取 り消す必要がある点に注意してください。

log_dptr
指定されたパラメーター。 APPC がログ データの格納に使用するバッファーのアドレスを指定します。

リターン コード

AP_OK
プライマリ リターン コード。動詞は正常に実行されました。

AP_PARAMETER_CHECK
プライマリ リターン コード。パラメーター エラーのため、動詞は実行されませんでした。

AP_BAD_CONV_ID

セカンダリ リターン コード。の 値conv_id APPC によって割り当てられた会話識別子と一致しません。

AP_BAD_TP_ID

セカンダリ リターン コード。の 値tp_id APPC によって割り当てられた TP 識別子と一致しません。