Changing the Value for Wait For Response|CLIv2 - Wait For Responseの値の変更 - Call-Level Interface Version 2

Teradata® Call-Level Interfaceバージョン2 リファレンス - ワークステーション接続システム - 17.20

Product
Call-Level Interface Version 2
Release Number
17.20
Published
2022年10月10日
Language
日本語
Last Update
2022-11-21
dita:mapPath
ja-JP/zws1641280432166.ditamap
dita:ditavalPath
ja-JP/obe1474387269547.ditaval
dita:id
B035-2418
Product Category
Teradata Tools and Utilities
与えられた値がアプリケーションにとって適切な値でなければ、DBCHCLを呼び出す前に、アプリケーション プログラムで次の値に設定することができます。
  1. オプションを’Y’に変更する。
  2. Wait For Responseの値を適切な値に変更します。
    • 'Y': DBCHCLは、関数を実行または完了できるまで制御を返さない場合。
    • 'N': 関数のリクエストがデータベースに送信された直後にDBCHCLが制御を返す場合。この場合、アプリケーション プログラムが、関数の応答が到着する時点を別の方法で検出する必要がある。

Wait For Responseが「N」に設定されていて、以下に説明している2つの状況のいずれかが発生した場合、次の戻りコードが返されます。

EM_NOTIDLE (208) or EM_NODATA (211),
アプリケーション プログラムでは、再試行することができます。
  • 再試行するのがよいかどうかを決める第1の方法は、DBCHWATを呼び出すことです。 DBCHWATから制御が戻ったならば、再試行をします。 この方法をとれば、待っている間に拘束されるシステム リソースが少なくて済みます。

    何回か試みる必要があるかもしれません。場合によっては、CLIが実行中の操作を終了し、すぐに別の操作を始めることがあります。その場合、1つの操作が終わった時点でDBCHWATが制御を返しますが、アプリケーション プログラムで次にDBCHCLを呼び出しても、CLIがすでに別の操作を開始しているので、その呼び出しは「実行されません」。何回か試行する必要があるかもしれないことを、考慮に入れておいてください。

  • 再試行するのがよいかどうかを決める第2の方法は、即座に再試行して、その呼び出しが「実行される」まで試行を続けることです。
  • Wait For Responseが'N'に設定されているときにいずれかの状態が発生した場合には、本来のDBCHCL呼び出しはまったく「実行されません」。CLIは、「I was not able to do that; try again later(関数を実行できませんでした。後で再試行してください)」と報告します。
  • Abort関数およびDisconnect関数は、どちらもWait For Responseの設定による影響を受けません。

Fetch、Rewind、End Request、およびAbort関数は、Wait For Responseの値を読み取って使用します。ただし、格納はしません。

アプリケーションは、CLIログオフ処理中にWait for Responseを使用して、ゲートウェイがログオフ リクエストに応答しない場合でも、CLIが「永久に」待機しないようにすることができます。