この章では、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が実行される場合、次が行われます。
実行中のタスクから、ユーザー・ダイアログ/トランザクションが接続解除されます
ユーザーにまだアタッチされているすべてのリソースが解放されます