TP_STARTED動詞は、呼び出し元トランザクション プログラム (TP) によって発行され、TP が開始されていることを APPC に通知します。
Microsoft® Windows® バージョン 3 の場合。x システムでは、この呼び出しのブロッキング バージョンではなく WinAsyncAPPC 関数を使用することをお勧めします。
次の構造体では、 TP_STARTED 動詞で使用される動詞制御ブロックについて説明します。
構文
struct tp_started {
unsigned short opcode;
unsigned char opext;
unsigned char reserv2;
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char lu_alias[8];
unsigned char tp_id[8];
unsigned char tp_name[64];
unsigned char syncpoint_rqd;
};
メンバー
オペコード
指定されたパラメーター。 動詞の操作コード (AP_TP_STARTED) を指定します。
opext
指定されたパラメーター。 動詞演算拡張機能を指定します。 AP_EXTD_VCB ビットが設定されている場合は、同期ポイントのサポートに使用される syncpoint_rqd メンバーが tp_started 構造体に含まれていることを示します。 それ以外の場合、動詞制御ブロックは 、tp_name メンバーの直後に終了します。
reserv2
予約済みフィールド。
primary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定される主なリターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラー コードについては、リターン コードを参照してください。
secondary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるセカンダリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラー コードについては、リターン コードを参照してください。
lu_alias
指定されたパラメーター。 ローカル LU がローカル TP に認識されるエイリアスを指定します。
名前は、構成中に確立された LU エイリアスと一致している必要があります。 APPC は、LU エイリアスを現在の Host Integration Server 構成ファイルと照合します。 ただし、Host Integration Server で使用されるクライアント/サーバー アーキテクチャのため、 ALLOCATE または MC_ALLOCATE が実行されるまで、このパラメーターは検証されません。
このパラメーターは 8 バイトの ASCII 文字列です。 次の ASCII 文字で構成できます。
大文字
0 ~ 9 の数字
スペース
特殊文字 $、#、%、および@
この文字列の最初の文字をスペースにすることはできません。
このパラメーターの値の長さが 8 バイト未満の場合は、右側に ASCII スペース (0x20) を埋め込みます。
既定の LU プールの LU を使用するには、このフィールドを 8 つの 16 進ゼロに設定します。 詳細については、「 既定の LU」を参照してください。
tp_id
返されたパラメーター。 新しく確立された TP を識別します。
tp_name
指定されたパラメーター。 ローカル TP の名前を指定します。
APPC の Host Integration Server の実装では、 TP_STARTEDによって発行された場合、このパラメーターは無視されます。 ただし、このパラメーターは、プログラムが APPC の IBM ES for OS/2 バージョン 1.0 実装で実行される場合に必要です。
このパラメーターは 64 バイトの EBCDIC 文字ストリングであり、大文字と小文字が区別されます。 tp_name パラメーターは、次の EDCDIC 文字で構成できます。
大文字と小文字
0 ~ 9 の数字
特殊文字 $、#、@、ピリオド (.)
TP 名の長さが 64 バイト未満の場合は、EBCDIC スペース (0x40) を使用して右側に埋め込みます。
サービス TP 名の SNA 規則は最大 4 文字です。 最初の文字は、0x00と0x3Fの間の 16 進数のバイトです。
syncpoint_rqd
この省略可能なパラメーターは、 opext パラメーターにAP_EXTD_VCB ビットが設定されていて、同期ポイント サービスが必要な場合にのみ適用されます。
- 同期ポイントが必要な場合にAP_YESします。
- 同期ポイントが不要な場合にAP_NOします。
リターン コード
AP_OK
プライマリ リターン コード。動詞が正常に実行されました。
AP_COMM_SUBSYSTEM_ABENDED
プライマリ リターン コード。は、次のいずれかの条件を示します。
この会話で使用されたノードで、異常終了が発生しました。
TP と PU 2.1 ノード間の接続が切断されました (LAN エラー)。
TP のコンピューターの SnaBase で、異常終了が発生しました。
システム管理者は、エラー・ログを調べて、異常終了の理由を判別する必要があります。
AP_COMM_SUBSYSTEM_NOT_LOADED
プライマリ リターン コード。動詞の処理中に必要なコンポーネントを読み込んだり終了したりできませんでした。 したがって、通信は行われませんでした。 修正措置については、システム管理者に問い合わせてください。
AP_INVALID_VERB_SEGMENT
プライマリ リターン コード。データ セグメントの末尾を超えて拡張された VCB。
AP_STACK_TOO_SMALL
プライマリ リターン コード。アプリケーションのスタック サイズが小さすぎて動詞を実行できませんでした。 アプリケーションのスタック サイズを増やします。
AP_TP_BUSY
プライマリ リターン コード。APPC が同じ TP に対して別の呼び出しを処理している間に、ローカル TP が APPC の呼び出しを発行しました。
AP_THREAD_BLOCKING
プライマリ リターン コード。呼び出し元スレッドは既にブロック呼び出し中です。
AP_UNEXPECTED_DOS_ERROR
プライマリ リターン コード。ローカル TP からの APPC 呼び出しの処理中に、オペレーティング システムから APPC にエラーが返されました。 オペレーティング システムのリターン コードは、 secondary_rcを介して返されます。 Intel のバイト スワップ順に表示されます。 問題が解決しない場合は、システム管理者に問い合わせてください。
注釈
TP_STARTEDに応答して、APPC は呼び出し元の TP の TP 識別子を生成します。 この識別子は、呼び出し元の TP によって発行された後続の APPC 動詞に必要なパラメーターです。
これは、呼び出し元の TP によって発行された最初の APPC 動詞である必要があります。 そのため、以前の APPC 状態は存在しません。
動詞が正常に実行されると (primary_rc がAP_OK)、状態が RESET に変わります。