• 非3270sターミナルは、Tuxedo ATMI tpcall()を介してリクエストを送信し、レスポンスを取得します。tpcall()のサービス名は、次の項で説明されている規則に従う必要があります。さらに、サーバーARTWTRN/ARTWTR1と交換できたデータ・バッファ・タイプはTuxedo FML32のみです。詳細なFML32フィールドおよび各データ構造については、次の項で説明しています。
• 非3270sクライアントによって呼び出されたサービスをTN3270ターミナルによって呼び出されたサービスと区別するために、ARTWTRN/ARTWTR1サーバーでは、各CICSトランザクションを名前の接頭辞WEB_の付いたTuxedoサービスとして通知します。クライアントがARTWTRN/ARTWTR1にリクエストを送信するとき、tpcallのサービス名はこの規則に従う必要があります。表1に、すべてのFML32フィールドを示します。これらは$KIXDIR/include/msgflds32で公開されます。
現在のMAPSETの名前で、クライアントのUIで表示されます。このフィールドは、ARTWTRN/1によって追加されたり、変更されます。クライアントは、このフィールドからMAPSET名を取得できます。 現在のMAPの名前で、クライアントのUIで表示されます。 前述のCICS APIは一部の制御オプション(FREEKB、ALARM、ERASE、ERASEUP、CURSORなど)で呼び出されることがあります。したがって、これらの制御オプションは、このFMLフィールドに挿入する必要があります。 クライアントのユーザーID。クライアント側で設定されない場合、ARTWTRN/1によってWEBGUESTが設定されます。 メインフレームCICSによって、マップセット・ファイルからコピーブックを生成するユーティリティが提供されます。コピーブックは、トランザクションによりCICS SEND/RECEIVE MAPが呼び出されるときに、アプリケーション・データの構造を定義するために使用されます。ART CICS Runtimeでは、対応するユーティリティtcxmapgenも提供されており、マップセット・ファイルからコピーブックが生成されます。tcxmapgenにより生成されるコピーブックの構造が、メインフレームCICSで生成されるものとほとんど同じであることに関して、クライアントとARTWTRN/1との間で交換されるアプリケーション・データは、各マップセットのコピーブックでの定義に従う必要があります。ヘッド・ファイルは、ART CICSオフライン・ユーティリティtcxmapgenにより実行時にBMSファイルから生成されたコピーブックとは、オープン・システムでのデータ構造の配置が原因で、一致しない可能性があります。カスタマが、適切なFILLERを埋め込んで、コピーブックを調整することが必要になる場合があります。SEND MAP/TEXTコマンドでカーソル・オプションを設定するなら、カーソル・オプションのないSENDコマンドの場合、ICを次の書式で3270データ・ストリームのヘッダーに挿入する必要があります。このコマンドでオプションERASEを設定する場合、カーソルは画面の左上隅に配置されます。ART CICS Runtimeでは、FMLフィールドCX_WEB_CTRL_CHARを12バイトのCARRAYと定義し、これらの制御文字を格納します。ただし、このリリースでは、主に使用されるCMD、WCCおよびICをサポートする予定です。このフィールドのデータの順序は次のとおりです。このフィールドでは最初の6文字のみが使用されて残りの6文字はX'00'で予約され、これらの文字のコードはASCIIではなくEBCDICとして設定されます。カーソルを設定する必要がない場合、SBA、ROW、COLおよびICにはバッファ内でX'00'が設定されます。ICがCICSコマンドのオプション・カーソルを介して設定されるのではなく、MAPSET/MAPファイルで設定される場合、このフィールドにはICが設定されず、カスタマは自分でICを処理する必要があります。ART CICS Runtimeでは、FMLフィールドCX_WEB_AIDをこれらの3文字を格納するように定義したため、AIDは常にキーボードのファンクション・キー([Enter]、[Clear]、[F01]から[F24]など)となります。ROWおよびCOLは、ターミナルからアプリケーション・プログラムにインバウンド・データ・ストリームを送信するとき、現在のカーソルの位置を意味します。これらの文字のコードは、ASCIIではなく、EBCDICとして設定されます。
•
•
• Tuxedo FML32バッファを使用する場合、COMMREAをリクエスト/レスポンスで交換し、ミラー・トランザクションとTWAを検証し、さらにCHANNELおよびCONTAINERを使用することもできます。Tuxedo RECORDバッファを使用する場合、RECORDデータ領域を使用してCOMMAREAを交換できます。ミラー・トランザクション、TWAまたはCHANNEL/CONTAINERはサポートされていません。Tuxedoクライアントは、Tuxedo ATMI tpcall()を介してリクエスト/レスポンスを送受信します。また、サーバーARTDPLと交換できるデータ・バッファ・タイプは、Tuxedo FML32またはRECORDのみです。ARTDPLサービスの詳細は、「DPLサーバー(ARTDPL)」の項を参照してください。Tuxedoクライアントからアクセス可能な、ARTDPLによって公開されるサービスには次の3つの種類があります。ユーザーは、実際のシナリオに応じていずれか1つを選択できます。DPL <program>は、TuxedoサービスとしてARTDPLによって通知できます。また、サービス名の接頭辞はCICSリージョン<sysid>_ です。これには、現在のARTDPLサーバーが属しています。クライアントがこのサービスをコールしてCOMMAREAをARTDPLサーバーと交換しようとする場合は、次のFML32フィールドがリクエストに存在します。
• タイプB: MIRROR_<transid>
• タイプC: <applid>_MIRROR_<transid>ミラー・トランザクションもTuxedoサービスによって通知できます。サービス名の接頭辞はMIRROR_または<applid>_MIRROR_となります。この場合、ミラー・トランザクションとTWAは常に有効です。ユーザーは、まず、ミラー・トランザクションとTWAサイズをtransactions.descで構成する必要があります。クライアントがこの2つのサービスをコールしてCOMMAREAをARTDPLサーバーと交換しようとする場合は、次のFML32フィールドがリクエストに存在する必要があります。RECORDをデータ・バッファとして使用してARTDPLサーバーを呼び出すには、呼び出されるプログラムに対してprograms.descでIN-TYPEおよびOUT-TYPEを構成する必要があります。RECORDを使用する場合、TuxedoクライアントはタイプAサービスのみを使用できます。表2に、すべてのFML32フィールドを示します。これらは$KIXDIR/include/msgflds32で公開されます。
表2 FML32フィールド
• ミラー・トランザクションとそのTWAサイズをtransactions.descに定義する必要があります。定義は、CICSシステム・ミラー・トランザクションCSMI/CVMIまたはカスタマイズ済トランザクションになります。詳細は、『Oracle Tuxedo Application Runtime for CICSユーザー・ガイド』のARTDPLでのTWAのサポートに関する項を参照してください。
• ターゲットのミラー・トランザクションとそのTWAサイズをARTDPLへのリクエストに指定します。次のFML32フィールドが存在する必要があります。実行済DPLプログラムで使用されるターゲットのミラー・トランザクションを指定します。CX_TRANSIDがリクエストに存在しない場合は、システム・ミラー・トランザクションCSMI/CVMIが配置されます。CSMI/CVMIがtransactions.descに存在しない場合、SYSIDERRが発生します。指定したCX_TRANSIDがtransactions.descで定義されている有効なミラー・トランザクションでない場合は、SYSIDERRが発生します。ARTDPLへのリクエストに、CX_TRANSIDが存在する場合は、ARTDPLがCX_TRANSIDの値としてEIBTRNIDを設定します。CX_TRANSIDが存在しない場合は、EIBTRNIDはシステム・ミラー・トランザクションCSMI/CVMIに設定されます。DPLプログラムが中断すると、ARTDPLサーバーがTPFAILSをクライアントに返します。ユーザーは、ARTDPLのレスポンスのFML32フィールドCX_ABENDCODEからCICS ABENDコードを取得できます。