作業単位識別子 (LUWID) は、単一の同期ポイント トランザクションの一部である会話を識別するために使用されます。 同じ LUWID を持つすべての会話は、同時にコミット (またはバックアウト) されます。
Host Integration Server は、TP の開始時にトランザクション プログラムに 2 つの LUWID を割り当てます。 ローカルで開始された TP の場合、これは TP_STARTED 動詞が発行されたときです。 最初の LUWID は、TP に保護されている LUWID です。 これは、TP によって割り当てられたすべての 同期レベル AP_SYNCPT会話の LUWID として Host Integration Server によって使用されます。 TP が AP_SYNCPT の同期レベルで ALLOCATE またはMC_ALLOCATE動詞を発行すると、Host Integration Server は TP の現在の保護された LUWID を含む Attach を生成します。
2 番目の LUWID は、TP の保護されていない LUWID です。 これは、AP_SYNCPT以外の 同期レベル で TP によって割り当てられたすべての会話で使用されます。
リモートで開始された TP の場合、会話に AP_SYNCPT の同期レベル がある場合、着信アタッチに TPit の LUWID が含まれている可能性があります。 同期ポイントの会話の場合、Host Integration Server は LUWID を TP の保護された LUWID として保存し、その LUWID に対して新しい保護されていない LUWID を生成します。 同期ポイント (AP_SYNCPT) 以外の 同期レベル との会話の場合、Host Integration Server は LUWID を TP の保護されていない LUWID として保存し、新しい保護された LUWID を生成します。
Host Integration Server では、次のコマンドを連結して LUWID が生成されます。
ローカル LU の完全修飾名。その前に長さを示す 1 バイト (長さバイトを含まない) が付いています。
現在の日時から生成された 6 バイト LUW インスタンス番号 (必要に応じて一意になるように変更)。
1 に初期化された 2 バイト LUW シーケンス番号。
LUWID の完全修飾 LU 名コンポーネントの長さが 17 バイトでない場合、Host Integration Server は LUW インスタンス番号との間にパディングを追加しません。 アプリケーションは、LUWID の最初のバイト (完全修飾 LU 名の長さを示す) を調べることで、LUWID の長さと LUW インスタンス番号と LUW シーケンス番号のその中のオフセットを判別できます。
Host Integration Server が TP の保護された LUWID と保護されていない LUWID の両方を生成する場合、保護されていない LUWID は、保護された LUWID のインスタンス番号をインクリメントすることによって作成されます。
保護された LUWID は、次の 4 つの理由のいずれかで TP によって変更する必要があります。
トランザクションがバックアウトまたはコミットされると、LUWID シーケンス番号をインクリメントする必要があります。
トランザクション ツリーが分割されている場合は、TP に対して新しい LUWID を生成する必要があります。
アプリケーションが複数の論理 TP を使用してトランザクションを実装する場合、各 TP は同じ LUWID を持っている必要があります (Host Integration Server によって割り当てられた LUWID とは異なります)。
アプリケーションが非 SNA 環境からゲートウェイとして機能していて、LUWID が Attach 以外の方法で受信される場合。
TP が新しい LUWID を設定または生成できるようにするには、APPC API によって新しい動詞 (SET_TP_PROPERTIES) が提供されます。 この動詞を使用すると、TP は LUWID を指定することによって、その LUWID を既存の値に設定するか、新しい LUWID を生成して使用することができます。 Host Integration Server によって新しい LUWID が生成されると、一意であることが保証されます。
保護された LUWID が変更されたときに、新しい LUWID PS ヘッダーをパートナー同期ポイント システムに送信するのは、アプリケーション (同期ポイント システム コンポーネント) の役割であることに注意してください。 同様に、新しい LUWID PS ヘッダーを受信した場合、アプリケーションは 、SET_TP_PROPERTIESを発行して LU に通知する必要があります。