FDELPHI 7 重いセンター みなさん、こんにちは。 以前、#18852 でODBCのエラーメッセージについて相談させていただきまし たが、原因らしきものが分かったので再び相談させていただきます。 ODBCドライバには SyBase を使っています。以下のようなプログラムを作っ て、ISDN回線経由でデータベースセンタにアクセスしています。 function TForm1.LogOnDB(SaveFileName:String; SQLText:TStrings):String; var i,ct:longWord; s0,s:String; f1:TextFile; begin Result := ''; StatusBar1.Panels[0].Text := 'センタに接続中'; upDate; Database.Connected := True; Query.SQL.Clear; Query.SQL := SQLText; Query.Active := True; Query.First; ct := 0; AssignFile(F1, SaveFileName); Rewrite(F1); (以下、nifty:FDELPHI/MES/16/00029 を参考にコーディング) ところが、このコードだと、データベースに接続した後、Query.Active または Query.First のところで回線が切れてしまうことがあるのです。 調べたところ、他の事業所からのアクセスが集中したりしてセンタの負荷が高い 時、待ち行列が長くなると待ち時間が異常に長くなってしまい、TAの無通信ガ ードタイムに達して回線が切られてしまうのです。 このとき、上記のコードの通りなのでリカバリがまったく考慮されておらず、そ のためアプリがとまってしまうことがわかりました。 また、当然ですが、誰かが電話線に足を引っかけて通信が途切れてしまった、な んていうことにも対応していません。 このような状況の時、try を使って回線の異常状況を検出できるとは思いますが、 どのようにリカバリするのがよいのでしょうか。 何か定石のようなものがございましたら、どなたかご教示いただけると幸いです。                                  としき