基本的に検索の目的で、(SQL Server 上で) ストアド プロシージャをレコード ソースとして実行するためのクエリ定義を使用するアクセスのサブフォームがあります。ユーザーが識別子を入力すると、Access はクエリ定義 ( exec [procname] [identifier]
) を変更し、サブフォームを再クエリして、手順の結果をサブフォームに入力する必要があります。
問題は、正確に 60 秒後に何も戻ってこない場合、屈服することです。エラー、タイムアウト アラート、警告はありません。空の結果セットを受け取ったという印象を与えるだけです。コードをステップ実行すると、それが確認されます-Subform.Requery
正確に60秒間ラインにぶら下がって(時間を計りました)、「それで十分です」と進み、問題を警告することさえありません。このサブルーチンにはエラー処理はありません(怪しいOn Error Resume Next
ものでも何でもありません - 何か問題がある場合は爆破する必要があります)。
コードをステップ実行しながらデバッガーからクエリ定義を直接コピーし、SQL Server Management Studio でそれを起動しましたが、うまくいきました。60秒以上かかります。
Access が 60 秒後にタオルを投入するのはなぜですか? そして、どうすればそれをより長く待つことができますか?