SLI_CLOSE動詞は、SLI_OPENで開かれたセッションを終了します。 LU-LU リソースと LU-SSCP リソースが解放されます。
次の構造体は、SLI_CLOSEによって使用される動詞制御ブロック (VCB) のLUA_COMMON メンバーについて説明します。
構文
struct LUA_COMMON {
unsigned short lua_verb;
unsigned short lua_verb_length;
unsigned short lua_prim_rc;
unsigned long lua_sec_rc;
unsigned short lua_opcode;
unsigned long lua_correlator;
unsigned char lua_luname[8];
unsigned short lua_extension_list_offset;
unsigned short lua_cobol_offset;
unsigned long lua_sid;
unsigned short lua_max_length;
unsigned short lua_data_length;
char FAR * lua_data_ptr;
unsigned long lua_post_handle;
struct LUA_TH lua_th;
struct LUA_RH lua_rh;
struct LUA_FLAG1 lua_flag1;
unsigned char lua_message_type;
struct LUA_FLAG2 lua_flag2;
unsigned char lua_resv56[7];
unsigned char lua_encr_decr_option;
};
メンバー
lua_verb
指定されたパラメーター。 セッション レベル インターフェイス (SLI) 動詞のLUA_VERB_SLI動詞コードが含まれています。
lua_verb_length
指定されたパラメーター。 論理ユニット アプリケーション (LUA) VCB の長さをバイト単位で指定します。 発行される動詞レコードの長さを含む必要があります。
lua_prim_rc
動詞の完了時に LUA によって設定されたプライマリ リターン コード。 有効なリターン コードは、発行された LUA 動詞によって異なります。
lua_sec_rc
動詞の完了時に LUA によって設定された 2 次リターン コード。 有効なリターン コードは、発行された LUA 動詞によって異なります。
lua_opcode
指定されたパラメーター。 発行される動詞の LUA コマンド コード (動詞操作コード) が含LUA_OPCODE_SLI_CLOSE。
lua_correlator
指定されたパラメーター。 動詞を他のユーザー指定の情報とリンクするユーザー指定の値が含まれます。 LUA では、この情報は使用または変更されません。 このパラメーターは省略可です。
lua_luname
指定されたパラメーター。 Windows LUA セッションで使用されるローカル LU の ASCII 名を指定します。
SLI_CLOSEは、lua_sidが 0 の場合にのみ、このパラメーターを必要とします。
このパラメーターは 8 バイトの長さであり、名前が 8 文字より短い場合は、右側にスペース (0x20) が埋め込まれます。
lua_extension_list_offset
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_cobol_offset
Microsoft® Host Integration Server の LUA では使用されず、ゼロにする必要があります。
lua_sid
指定されたパラメーター。 セッション識別子を指定し、 SLI_OPEN および RUI_INITによって返されます。 他の動詞では、このパラメーターを使用して、コマンドに使用されるセッションを識別します。 他の動詞で lua_luname パラメーターを使用してセッションを識別する場合は、 lua_sid パラメーターを 0 に設定します。
lua_max_length
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_data_length
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_data_ptr
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_post_handle
指定されたパラメーター。 非同期通知がイベントによって実現される場合は、Microsoft Windows Server で使用されます。 この変数には、通知されるイベントのハンドルまたはウィンドウ ハンドルが含まれます。
lua_th
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_rh
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_flag1
指定されたパラメーター。 アプリケーションによって提供されるメッセージのフラグを含むデータ構造を格納します。 そのサブパラメーターは次のとおりです。
lua_flag1.bid_enable
入札単価有効化インジケーター(1 ビット)。
lua_flag1.close_異常終了
即時インジケーター (1 ビット) を閉じます。 セッションをすぐに閉じる (ON) か、正常に閉じる (OFF) かを指定するために、 SLI_CLOSE によって指定されたパラメーター。 SLI_CLOSE以外の動詞の場合、このフラグはオフにする必要があります。
lua_flag1.nowait
データ フラグ (1 ビット) を待機しません。
lua_flag1.sscp_exp
システム サービス制御ポイント (SSCP) の迅速なフロー(1 ビット)。
lua_flag1.sscp_norm
SSCP 標準フロー、1 ビット。
lua_flag1.lu_exp
LU 優先フロー、1 ビット。
lua_flag1.lu_norm
LU の通常のフロー(1 ビット)。
lua_message_type
SLI_CLOSEでは使用されず、0 に設定する必要があります。
lua_flag2
返されたパラメーター。 LUA によって返されるメッセージのフラグが含まれています。
lua_flag2.async
LUA インターフェイス動詞が 1 に設定されている場合に非同期的に完了したことを示します。
lua_resv56
予約済みで、0 に設定する必要があります。
lua_encr_decr_option
SLI_CLOSEでは使用されず、0 に設定する必要があります。
リターン コード
LUA_OK
プライマリ リターン コード。動詞が正常に実行されました。
LUA_SEC_OK
セカンダリ リターン コード。LUA_OKに関する追加情報は存在しません。
LUA_PARAMETER_CHECK
プライマリ リターン コード。パラメーター エラーのため、動詞が実行されませんでした。
LUA_INVALID_LUNAME
セカンダリ リターン コード。無効な lua_luname が指定されました。
LUA_BAD_SESSION_ID
セカンダリ リターン コード。VCB でlua_sid の無効な値が指定されました。
LUA_RESERVED_FIELD_NOT_ZERO
セカンダリ リターン コード。発行した動詞の予約済みパラメーターが 0 に設定されていません。
LUA_INVALID_POST_HANDLE
セカンダリ リターン コード。非同期投稿方法としてイベントを使用する Microsoft Windows オペレーティング システムの場合、Windows LUA VCB には有効なイベント ハンドルが含まれていません。
LUA_VERB_LENGTH_INVALID
セカンダリ リターン コード。LUA によって予期しない値を持つ LUA 動詞 lua_verb_length 発行されました。
LUA_STATE_CHECK
プライマリ リターン コード。無効な状態で発行されたため、動詞は実行されませんでした。
LUA_NO_SLI_SESSION
セカンダリ リターン コード。コマンドの発行時に SLI_CLOSE またはセッションエラーが発生したため、セッションが開かられなかったか、または停止しました。
LUA_CLOSE_PENDING
セカンダリ リターン コード。次のいずれかが発生しました。
別のCLOSE_ABENDが発行されたときに、CLOSE_ABENDがまだ保留中でした。 CLOSE_NORMALが保留中の場合は、CLOSE_ABENDを発行できます。
CLOSE_NORMALが発行されたときに、CLOSE_ABENDまたはCLOSE_NORMALがまだ保留中でした。
LUA_SESSION_FAILURE
プライマリ リターン コード。セカンダリ リターン コードで指定されたエラー条件により、セッションが失敗しました。LUA_NOT_ACTIVE
セカンダリ リターン コード。LUA 動詞が発行されたときに、LUA が Microsoft Host Integration Server 内でアクティブでなかった。
LUA_UNEXPECTED_SNA_SEQUENCE
セカンダリ リターン コード。 SLI_OPEN 処理中に、予期しないデータまたはコマンドがホストから受信されました。
LUA_NEGATIVE_RSP_CHASE
セカンダリ リターン コード。ホストからの SNA CHASE コマンドに対する否定的な応答は、 SLI_CLOSE の処理中に LUA インターフェイスによって受信されました。 SLI_CLOSE セッションを停止する処理を続行します。
LUA_NEGATIVE_RSP_SHUTC
セカンダリ リターン コード。 SLI_CLOSE がまだ処理中に、ホストからの SNA SHUTC コマンドに対する否定応答が SLI によって受信されました。 SLI_CLOSE セッションを停止する処理を続行します。
LUA_NEGATIVE_RSP_SHUTD
セカンダリ リターン コード。ホストからの SNA RSHUTD コマンドに対する否定的な応答は、 SLI_CLOSE がまだ処理中に LUA インターフェイスによって受信されました。 SLI_CLOSE セッションを停止する処理を続行します。
LUA_RECEIVED_UNBIND
セカンダリ リターン コード。プライマリ論理ユニット (PLU) は、セッションがアクティブなときに SNA UNBIND コマンドを LUA インターフェイスに送信しました。 その結果、セッションは停止しました。
LUA_NO_RUI_SESSION
セカンダリ リターン コード。LUA 動詞が発行されたセッションが初期化されていないか、セッションが初期化される前 にSLI_OPEN 以外の動詞が発行されました。
LUA_LU_COMPONENT_DISCONNECTED
セカンダリ リターン コード。LU コンポーネントが正しく接続されていないため、使用できません。 電源がオンになっていることを確認します。
LUA_IN_PROGRESS
プライマリ リターン コード。非同期コマンドが受信されましたが、完了していません。LUA_COMM_SUBSYSTEM_ABENDED
プライマリ リターン コード。は、次のいずれかの条件を示します。この会話で使用されたノードで、異常終了が発生しました。
トランザクション プログラム (TP) と物理ユニット (PU) 2.1 ノード間の接続が切断されました (LAN エラー)。
TP コンピューターの SnaBase で、異常終了が発生しました。
LUA_COMM_SUBSYSTEM_NOT_LOADED
プライマリ リターン コード。動詞の処理中に必要なコンポーネントを読み込んだり終了したりできませんでした。 したがって、通信は行われませんでした。 修正措置については、システム管理者に問い合わせてください。LUA_INVALID_VERB_SEGMENT
プライマリ リターン コード。データ セグメントの末尾を超えて拡張された VCB。LUA_UNEXPECTED_DOS_ERROR
プライマリ リターン コード。オペレーティング システム呼び出しを発行した後、予期しないオペレーティング システムのリターン コードが受信され、セカンダリ リターン コードで指定されます。LUA_STACK_TOO_SMALL
プライマリ リターン コード。アプリケーションのスタック サイズが小さすぎて動詞を実行できませんでした。 アプリケーションのスタック サイズを増やします。LUA_INVALID_VERB
プライマリ リターン コード。動詞コードまたは操作コード、またはその両方が無効です。 動詞が実行されませんでした。
注釈
SLI_CLOSEには、normal と ABEND の 2 種類があります。 通常のクローズの場合、 lua_flag1.close_異常終了 はゼロに設定されます。 通常のクローズのシーケンスは、プライマリ (ホストによって開始) またはセカンダリ (Windows LUA アプリケーションによって要求) として開始できます。 通常のプライマリ クローズ中に、Windows LUA インターフェイスは次の処理を行います。
SHUTD コマンドを読み取り、SESSION_END_REQUESTED状態をアプリケーションにポストします。
必要に応じて、CHASE コマンドを書き込みます。
CHASE コマンド応答を読み取って処理します (必要な場合)。
シャットダウン完了 (SHUTC) コマンドを書き込みます。
SHUTC コマンド応答を読み取って処理します。
CLEAR コマンドを読み取って処理します (必要な場合)。
CLEAR コマンド応答を書き込みます (必要な場合)。
UNBIND コマンドを読み取って処理します。
UNBIND コマンド応答を書き込みます。
セッションを停止します。
セカンダリ 法線クローズ中に、Windows LUA インターフェイスは次の処理を行います。
RSHUTD コマンドを書き込みます。
RSHUTD コマンド応答を読み取って処理します。
CLEAR コマンドを読み取って処理します (必要な場合)。
CLEAR コマンド応答を書き込みます (必要な場合)。
UNBIND コマンドを読み取って処理します。
UNBIND コマンド応答を書き込みます。
セッションを停止します。
異常終了クローズの場合、 lua_flag1.close_異常終了 は 1 に設定され、Windows LUA インターフェースはセッションを直ちにクローズするように指示します。 SLI_CLOSEが処理を開始すると、LU-LU 接続が終了し、LU がセッションを維持できないという通知が SSCP に通知されます。