9.44 DISCONNECT_SERVER

LANSA

9.44 DISCONNECT_SERVER


Þ 注:組み込み関数の規則

接続されたサーバーから現在のファンクションを切断します。

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

各製品の対応

LANSA/AD

使用可

RDMLXでのみ使用可

Visual LANSA for Windows

使用可

 

Visual LANSA for Linux

使用可

 

 

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

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%を占有するようなケースもあります(アプリケーションには何のメリットもありません)。このような事態に陥らないようにしてください。