この章では、Oracle Database 11gリリース2 (11.2) for BS2000/OSDをopenUTM (Universal Transaction Monitor)で使用する場合に考慮する必要のある、Oracle Database固有の点を説明します。この章の内容は、次のとおりです。
UTMアプリケーションのプログラム・ユニットでは、組込みのSQLを使用する必要があります。Oracle Call Interface (OCI)へのコールは許可されていません。
接続は、UTMタスクの起動時に暗黙的に確立されます。この接続では、open文字列に指定したデータが使用されます。プログラム・ユニットによって発行される、これ以上の明示的なCONNECT
操作は許可されていません。
UTMのプログラム・ユニットでは、明示的なROLLBACK
文は許可されていません。openUTMによって、PEND ER
、RS
、FR
またはRSET
操作があると自動的にROLLBACK
文が発行されます。
カーソルは、PEND
が実行されるまでのみ有効です。PEND KP
、PA
またはPR
中にタスクが変更される可能性があるため、PEND KP
、PA
またはPR
の後にOPEN
またはFETCH
などの以前に入力されたカーソルに対して操作は実行できません。ただし、PEND KP
の後には新しいカーソルをオープンおよびフェッチできます。PEND KP
を使用するかわりに、端末より入力があるまで待機する、PGWTコール(openUTMのCOBOL、CおよびC++でのKDCSを使用したアプリケーションのプログラミングに関するマニュアルを参照)を使用するか、またはPEND PA
またはPR
の後のプログラムに同じTACCLASSを割り当てます。
この項では、UTMの操作をするときに考慮する必要のあるOracle Database固有の点について説明します。この項では、PEND
(Program Unit End)およびRSET
(Reset)操作について説明します。これらの操作は、openUTMおよびOracle Database間の共通の同期ポイントを示します。
PEND
コールを発行する場合、UTMは同期のために内部でOracle Databaseをコールます。PEND
が実行される場合、次が行われます。
実行中のタスクから、ユーザー・ダイアログ/トランザクションが接続解除されます
ユーザーにまだアタッチされているすべてのリソースが解放されます