tsmkobj(トランザクション制御用オブジェクトファイルの作成(C++))
形式
tsmkobj -o トランザクション制御用オブジェクト名 [-r リソースマネージャ名[,リソースマネージャ名]...] [-l]
機能
アプリケーションプログラムで使用するリソースマネージャのXA-switchを含んだトランザクション制御用オブジェクトファイルとトランザクション制御用共用ライブラリを作成します。
オブジェクトファイルは,$TPSPOOL/XA下に「トランザクション制御用オブジェクト名.o」という名称で作成されます(Windows版の場合,「トランザクション制御用オブジェクト名.obj」という名称で作成されます)。このオブジェクトファイルと各リソースマネージャが提供するリソースマネージャ関連オブジェクトファイルをアプリケーションプログラムにリンクしてください。リンクすると,トランザクションサービス下でリソースマネージャにアクセスするトランザクションを実行できます。
アプリケーションプログラムにtslnkrmコマンドが作成した「tp_allrm.o」(Windows版の場合は「tp_allrm.obj」)をリンクする場合は,tsmkobjコマンドで新たにオブジェクトファイルを作成する必要はありません。CRM以外のリソースマネージャを使用しない場合は,$TPSPOOL/XAにある「tp_crm.o」をアプリケーションプログラムにリンクしてください(Windows版の場合,「tp_crm.obj」をリンクしてください)。アプリケーションプログラムからトランザクションサービスの機能を使用するには,このファイルをリンクする必要があります。
tsmkobjコマンドはC++コンパイラを使用します。tsmkobjコマンドがコンパイラを実行できるように,環境変数PATHにコンパイラがあるディレクトリをあらかじめ追加しておいてください(Windows版の場合,環境変数INCLUDEにヘッダファイルがあるディレクトリを,環境変数LIBにライブラリがあるディレクトリをあらかじめ追加しておいてください)。
このコマンドは,Cosminexus TPBrokerではサポートしていません。
オプション
-o トランザクション制御用オブジェクト名
〜<1〜12文字の英数字>
トランザクション制御用オブジェクトファイルの名称を指定します。
拡張子を指定する必要はありません。
-r リソースマネージャ名
〜<1〜32文字の英数字>
アプリケーションプログラムからアクセスするリソースマネージャの名称を指定します。
トランザクションサービスに登録されていないリソースマネージャは指定できません。どのリソースマネージャが登録されているかは,tslsrmコマンドを使用して確かめることができます。
複数のリソースマネージャ名を指定する場合は,リソースマネージャ名とリソースマネージャ名の間を「,」(コンマ)で区切ってください。
このオプションを省略した場合は,トランザクションサービスに登録されているすべてのリソースマネージャを指定したものとみなされます。
-l
tsmkobjコマンドの実行経過の詳細が標準出力に出力されます。
例
tsmkobj -o myOracle -r Oracle_XA