1.5.1.1 非端末Oracle Tuxedoクライアントのプログラミング・インタフェース
Tuxedo ART for IMSでは、非端末クライアントとTuxedo ART for IMSのMPPサーバー間のブリッジとして機能するサーバー、ARTIGWが提供されます。非端末クライアントは、次に示すプログラミング・インタフェースに従って、ARTIGWサービスを呼び出します。ARTIGWはサービス・リクエストをARTMPPに転送します。
ARTIGWと非端末Oracle Tuxedoクライアント間の唯一のインタフェースは、FML表です。
アプリケーション・バッファでIMSトランザクション(TRANS1など)を実行するには、次のステップを実行します。
- クライアント・ユーザーは次のFMLフィールドを含む送信バッファを準備する必要があります。
-
IMS_SVC_NAMEIMSトランザクション名("
TRANS1"など)。 -
IMS_SVC_FLAG将来使用するために予約済
-
IMS_SEG_DATAアプリケーション・バッファ・データ。LLZZはバッファ内に必要ありません。セグメントの最大長は32764です(これはARTIMPPの制限です)。
-
- クライアントは、ステップ1で準備したバッファで
tpcall()/tpacall()を発行します。ret = tpcall(<tuxclt_service_name>, …)この
<tuxclt_service_name>はARTIGWの通知済サービスで、サービス名が構成可能です。詳細は、ARTIGW CONFIGURATIONを参照してください。 - クライアントが返信を取得します。返信メッセージには、次のFMLフィールドが存在しています:
IMS_SVC_RESULT0:
ARTIMPPがレスポンス・メッセージによってリクエストを正常に処理します。1:
ARTIMPPがレスポンス・メッセージなしでリクエストを正常に処理します。-1:
ARTIGWエラー-2:
ARTIMPPエラーIMS_SEG_DATA Buffer contains reply data. LLZZ is not included in the buffer.
IMS_SVC_RESULTが負の整数の場合は、冗長エラー・メッセージ。IMS_SVC_SYSMSG
インタフェースのFMLフィールド表(ARTIGWFML)とヘッダー・ファイル(ARTIGWFML.h)は、$IMSDIR/includeの下にあります。次のリスト4は、ARTIGWFMLの内容を示しています。
ARTIGWFMLの内容のリスト
*base 30000700
#name rel-number type flags comment
#----- ----------- ------ ------- ------------------------
IMS_SVC_NAME 181 string
IMS_SVC_FLAG 182 long
IMS_SVC_RESULT 183 long
IMS_SEG_DATA 184 carray
IMS_SVC_SYSMSG 185 carray親トピック: プログラミング・インタフェース