分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス C言語編
![[目次]](FIGURE/CONTENT.GIF)
![[索引]](FIGURE/INDEX.GIF)
![[前へ]](FIGURE/FRONT.GIF)
UAPの翻訳と結合方法については,使用するOSのリファレンスマニュアルを参照してください。
- UAP作成時の注意
UAPを作成するときは,OpenTP1のバージョンに気を付けてください。システムサービスによっては,古いバージョンのUAPからの関数呼び出しを受け付けないことがあります。旧バージョンで作成したUAPを使用する場合,現在使用しているバージョンのOpenTP1で,コンパイル/リンケージし直すことをお勧めします。
- <この項の構成>
- (1) 翻訳(コンパイル)
- (2) 結合(リンケージ)
- (3) 注意事項
C言語でコーディングしたUAPのオブジェクトファイルを作成するには,ソースプログラムをCコンパイラで翻訳します。スタブのソースプログラムを翻訳するときも同様です。
ここでの説明中の※1〜※3の意味を次に示します。
- 注※1
- リソースマネジャにXAインタフェースアクセスするトランザクションを実行する場合に必要です(OpenTP1で提供するリソースマネジャは,すべてXAインタフェースでアクセスします)。トランザクション制御用オブジェクトファイルは,OpenTP1のコマンド(trnmkobjコマンド)で作成します。trnmkobjコマンドについてはマニュアル「OpenTP1 運用と操作」を参照してください。
- 注※2
- リソースマネジャにアクセスする場合に必要です。OpenTP1で提供するリソースマネジャのオブジェクトファイルを結合するときは,リンケージのコマンドに次の引数を指定します。
- メッセージ送受信機能を使う場合:-lmcf,-lmnet
- DAMアクセス機能を使う場合:-ldam
- TAMアクセス機能を使う場合:-ltam
- ISAM機能を使う場合:-lismb,-lisam,-lrsort
- メッセージキューイング機能を使う場合:-lmqa
- 他社のリソースマネジャのオブジェクトファイルの結合方法については,使用する他社リソースマネジャのリファレンスマニュアルを参照してください。
- 注※3
- dc_uto_test_status関数(ユーザサーバのテスト状態の報告)を使う場合に必要です。オンラインテスタのオブジェクトファイルを結合するときは,リンケージのコマンドに次の引数を指定します。
- ユーザサーバのテスト状態を報告する場合:-luto
SPPまたはMHPの実行形式ファイルは,次に示すファイルを結合させて作成します。
- UAPのオブジェクトファイル(メイン関数とサービス関数)
- スタブのオブジェクトファイル
- トランザクション制御用オブジェクトファイル※1
- リソースマネジャで提供するオブジェクトファイル※2
- オンラインテスタで提供するオブジェクトファイル※3
- OpenTP1のライブラリ
SUPの実行形式ファイルは,次に示すファイルを結合させて作成します。
- UAPのオブジェクトファイル(メイン関数)
- トランザクション制御用オブジェクトファイル※1
- リソースマネジャで提供するオブジェクトファイル※2
- オンラインテスタで提供するオブジェクトファイル※3
- OpenTP1のライブラリ
オフラインの業務をするUAPの実行形式ファイルは,次に示すファイルを結合させて作成します。
- UAPのオブジェクトファイル(メイン関数)
- OpenTP1のライブラリ
サービス関数動的ローディング機能を使用するSPP,MHPの実行形式ファイルは,次に示すファイルを結合させて作成します。
- UAPのオブジェクトファイル(メイン関数)
- OpenTP1のライブラリ
- トランザクション制御用オブジェクトファイル※1
- リソースマネジャで提供するオブジェクトファイル※2
- オンラインテスタで提供するオブジェクトファイル※3
また,サービス関数動的ローディング機能とスタブでのサービス検索を併用する場合は,次のファイルが必要です。
- UAPのオブジェクトファイル(サービス関数)
- スタブのオブジェクトファイル
OSがHP-UXの場合,リンケージ時のバインドモードには必ず"immediate"を指定してください。"immediate"以外のバインドモードで作成した実行形式ファイルをOpenTP1のUAPとして使った場合,システムの動作は保証しません。作成したUAPのバインドモードが"immediate"かどうかは,OSのchatrコマンドで確認してください。
All Rights Reserved. Copyright (C) 2006, 2012, Hitachi, Ltd.