SLI_CLOSE
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 によって設定されたセカンダリ リターン コード。 有効な戻りコードは、発行される 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_abend
即時インジケーター (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_verb_length の値を持つ LUA 動詞が発行されました。
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
セカンダリ リターン コード。ホストからの SNA SHUTC コマンドに対する否定的な応答は、 SLI_CLOSE がまだ処理中に 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
プライマリ リターン コード。次のいずれかの条件を示します。このメッセージ交換で使用されているノードで、ABEND が発生しました。
トランザクション・プログラム (TP) と物理装置 (PU) 2.1 ノードの間の接続が切断されました (LAN エラー)。
TPs コンピューターの SnaBase で、ABEND が発生しました。
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_abend はゼロに設定されます。 通常のクローズのシーケンスは、プライマリ (ホストによって開始) またはセカンダリ (Windows LUA アプリケーションによって要求) として開始できます。 プライマリの通常のクローズ中に、Windows LUA インターフェイスは次の手順を実行します。
SHUTD コマンドを読み取り、SESSION_END_REQUESTED状態をアプリケーションにポストします。
(必要に応じて) CHASE コマンドを書き込みます。
CHASE コマンド応答を読み取って処理します (必要な場合)。
シャットダウン完了 (SHUTC) コマンドを書き込みます。
SHUTC コマンド応答を読み取って処理します。
CLEAR コマンドを読み取って処理します (必要な場合)。
CLEAR コマンド応答を書き込みます (必要な場合)。
UNBIND コマンドを読み取って処理します。
UNBIND コマンド応答を書き込みます。
セッションを停止します。
セカンダリ の通常のクローズ中に、Windows LUA インターフェイスは次の手順を実行します。
RSHUTD コマンドを書き込みます。
RSHUTD コマンド応答を読み取って処理します。
CLEAR コマンドを読み取って処理します (必要な場合)。
CLEAR コマンド応答を書き込みます (必要な場合)。
UNBIND コマンドを読み取って処理します。
UNBIND コマンド応答を書き込みます。
セッションを停止します。
ABEND クローズの場合、 lua_flag1.close_abend は 1 に設定され、Windows LUA インターフェイスにセッションを直ちに終了するように指示されます。 SLI_CLOSE処理を開始すると、LU-LU 接続が終了し、LU がセッションを維持できないという通知が SSCP に通知されます。