Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/disconnect_server.htm]
現在地:

...

9.51 DISCONNECT_SERVER

Note

注意

...

 9.1

...

組み込み関数の規則     利用オプション

接続されたサーバーから現在のファンクションを切断します。 接続されたサーバーから現在のファンクションを切断します。  すでに切断済みのサーバーに対する切断要求は無視されます。エラーにはなりません。
 

すでに切断済みのサーバーに対する切断要求は無視されます。エラーにはなりません。 

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

定義されているサーバーのSSN

1

10

 

 

...



戻り値

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

戻りコード

OK -

切断完了

切断完了 
ER - 切断中にエラーが発生した

2

2

 

 

...



技術上の注記

  • サーバーを使用中 (サーバーに接続されたファイルに対するSELECTループの実行中など) に、そのサーバーに対する切断要求を実行すると、アプリケーション・エラーまたは予期しない結果が発生します。
  • 「切断」のロジックは、多数のRDMLファンクションに分散させるのではなく、1つのファンクションだけにコーディングすることを強くお勧めします。このようにすることで、将来サーバーに対して加えられる変更からアプリケーションを保護することができます。
  • サーバーの切断が実際に必要とされることはありません。X_RUNコマンドは終了するときに接続済みのサーバーをすべて自動で切断するからです。
  • データベース・サーバーに対して実行すると、実際のデータベース接続が切断されますが、そのデータベースに対してさらにIOを実行すると、接続が自動的に再確立されます。

エラー処理に関する注意事項

...

複雑なエラー処理スキームをご使用のアプリケーションに組み込むことは避けるよう、強くお勧めします。アプリケーションのすべてのレベルで、以下のようなごく単純なトラップを使用するようにしてください。 

     if (#retcode *ne OK)
     abort msgtxt('Failed to .............................')

...


endif

...

標準的なエラー処理を行う組み込み関数を生成されるアプリケーションに組み入れて、問題に対処するようにしてください。ユーザー定義のエラー処理ロジックが非常に複雑になったために全RDMLコードの40~50%を占有するようなケースもあります (アプリケーションには何のメリットもありません)。このような事態に陥らないようにしてください。
[ Image Removed |../../index.htm#lansa/disconnect_server.htm]。このような事態に陥らないようにしてください。