7.1.2 Fml32バッファ定義

非3270sクライアントとARTWTRN/ARTWTR1とのインタフェースとなるのは、Tuxedo FML32バッファのみです。すべてのアプリケーション・データと一部のターミナル制御情報は、FML32バッファでカプセル化されます。

次の表に、すべてのFML32フィールドを示します。これらは$KIXDIR/include/msgflds32で公開されます。

表7-1 CICS Runtimeの非3270sターミナルとの統合のためのFML 32バッファ定義

フィールド名 Tuxedoのバッファ・タイプ 長さ コメント
CX_WEB_TRANSID アウトバウンド CARRAY 4 呼び出されるトランザクション名。このフィールドは、ARTWTRN/1により追加または変更されます。クライアントは、このフィールドからトランザクション名を取得し、それを次のtpcallに使用できます。
CX_WEB_MAPSET_NAME アウトバウンド CARRAY 7 現在のMAPSETの名前で、クライアントのUIで表示されます。

このフィールドは、ARTWTRN/1により追加または変更されます。クライアントは、このフィールドからMAPSET名を取得できます。

CX_WEB_MAP_NAME アウトバウンド CARRAY 7 現在のMAPの名前で、クライアントのUIで表示されます。このフィールドは、ARTWTRN/1により追加または変更されます。クライアントは、このフィールドからMAP名を取得できます。
CX_WEB_APPDATA アウトバウンド/インバウンド CARRAY コピーブックに依存 クライアントのUIで表示されるか、トランザクションで処理される必要のあるアプリケーション・データ。

このフィールドは、ARTWTRN/1とクライアントの両方によって追加、変更または読取りが行われます。

クライアントでは、FMLバッファを受信すると、アプリケーション・データをこのフィールドから取得し、コピーブックに従い各マップ・フィールドに分割する必要があります。

クライアントは、最新のアプリケーション・データをコピーブックに従って再編成し、ARTWTRN/1に送信することもできます。FMLバッファを受信すると、ARTWTRN/1ではこのフィールドからアプリケーション・データを取得し、処理のためにデータをトランザクションに渡します。

CX_WEB_CTRL_CHAR アウトバウンド CARRAY 12 コマンドCICS SENDCICS SEND MAPCICS SEND TEXTおよびCICS SEND CONTROLのターミナル制御文字。

時には、前述のCICS APIは一部の制御オプション(FREEKBALARMERASEERASEUPCURSORなど)で呼び出されます。したがって、これらの制御オプションは、このFMLフィールドに挿入する必要があります。

フィールドは、ARTWTRN/1により追加または変更されます。クライアントは、このフィールドから制御オプションを取得し、それらを適宜処理できます。

CX_WEB_AID インバウンド CARRAY 3 CICS RECEIVEおよびCICS RECEIVE MAPの実行時の注意IDおよびカーソルの位置。

3270ターミナルからCICS Runtimeにアプリケーション・データが送信されるとき、データには常にAIDと画面の現在のカーソルの位置が含まれます。したがって、このフィールドは、クライアントにより追加または変更されます。ARTWTRN/1ではこのフィールドからデータを取得し、処理のためにデータをトランザクションに渡します。

CX_SESSIONID アウトバウンド/インバウンド STRING 16 クライアントのセッションID。クライアント側で記入されないと、ARTWTRN/1によりランダムに生成されます。
CX_TERMID アウトバウンド/インバウンド CARRAY 4 クライアントの期間ID。クライアント側で記入されないと、ARTWTRN/1によりランダムに生成されます。
CX_USERID アウトバウンド/インバウンド CARRAY 8 クライアントのユーザーID。クライアント側で記入されない場合、ARTWTRN/1によりWEBGUESTが記入されます。

ノート:

アウトバウンドは、フィールドがARTWTRN/1からクライアントへのFMLバッファにのみ含まれることを意味します。インバウンドは、フィールドがクライアントからARTWTRN/1へのFMLバッファにのみ含まれることを意味します。
CX_WEB_APPDATA
メインフレームCICSには、マップセット・ファイルからコピーブックを生成するユーティリティが備わっています。コピーブックは、トランザクションによりCICS SEND/RECEIVE MAPが呼び出されるときに、アプリケーション・データの構造を定義するために使用されます。

ART CICS Runtimeでは、対応するユーティリティtcxmapgenも提供されており、マップセット・ファイルからコピーブックが生成されます。tcxmapgenにより生成されるコピーブックの構造が、メインフレームCICSで生成されるものとほとんど同じであることに関して、クライアントとARTWTRN/1との間で交換されるアプリケーション・データは、各マップセットのコピーブックでの定義に従う必要があります。

CICS SEND/RECEIVECICS SEND TEXTの場合、ARTWTRN/1とクライアントでは、フィールドCX_WEB_APPDATAにプレーン・テキストの文字を挿入すれば済みます。

ヘッド・ファイルは、ART CICSオフライン・ユーティリティtcxmapgenにより実行時にBMSファイルから生成されたコピーブックとは、オープン・システムでのデータ構造の配置が原因で、一致しない可能性があります。カスタマが、適切なFILLERを埋め込んで、コピーブックを調整することが必要になる場合があります。

CX_WEB_CTRL_CHAR
メインフレームCICSでは、アウトバウンド・データ・ストリームは、アプリケーション・プログラムからターミナルに次の書式で送信されるデータ・ストリームです。
|Command | Write Control Character | Indicate Cursor | Orders | Data | Orders| Data | ...
CMDは、ターミナルで実行される関数を定義します。ARTWTRN/1ではWおよびEWがサポートされます。これは1バイトです。
WCCは、CMD関数の実行方法を指示します。これは次の書式で1バイトです。
| 0 | 1 | 2/3 | 4 | 5 | 6 | 7 |
| * | Reset | Printout | Start | Sound | Keyboard | Reset |
| | | Format | Print | Alarm | Restore | MDT |
SEND MAP/TEXTコマンドでカーソル・オプションを設定するなら、カーソル・オプションのないSENDコマンドの場合、ICを次の書式で3270データ・ストリームのヘッダーに挿入する必要があります。このコマンドでオプションERASEを設定する場合、カーソルは画面の左上隅に配置されます。
| SBA | ROW | COL | IC |
前述のCMD、WCCおよびICに加えて、その他の制御文字(EUAなど)も、3270データ・ストリームのヘッダーに含めることができます。
ART CICS Runtimeでは、FMLフィールドCX_WEB_CTRL_CHARを12バイトのCARRAYと定義し、これらの制御文字を格納します。ただし、このリリースでは、主に使用されるCMD、WCCおよびICをサポートする予定です。このフィールドのデータ順序は次のとおりです: | CMD | WCC | SBA | ROW | COL | IC | ...
このフィールドでは最初の6文字のみが使用され、残りの6文字はX’00’で予約され、これらの文字のコードは、ASCIIではなくEBCDICとして設定されます。カーソルを設定する必要がない場合、SBA、ROW、COLおよびICは、X’00’により設定されます。ICがCICSコマンドのオプション・カーソルにより設定されず、MAPSET/MAPファイルで設定される場合、このフィールドではICが設定されず、カスタマは自分でICを処理する必要があります。
CX_WEB_AID
メインフレームCICSでは、インバウンド・データ・ストリームが、ターミナルからアプリケーション・プログラムに送信され、注意識別子(AID)が含まれ、直後にカーソルまたはデータが続きます。AIDは、インバウンド・データ・ストリームの送信の原因となったアクションを、次の書式で説明します: | AID | ROW | COL |
ART CICS Runtimeでは、FMLフィールドCX_WEB_AIDを、これらの3文字を格納するように定義したため、AIDは常にキーボードのファンクション・キー([Enter]、[Clear]、[F01]から[F24]など)となります。ROWおよびCOLは、ターミナルからアプリケーション・プログラムにインバウンド・データ・ストリームを送信するとき、現在のカーソルの位置を意味します。これらの文字のコードは、ASCIIではなく、EBCDICとして設定されます。