最初に開かれるフォーム (スプラッシュ スクリーン - フォームは Autoexec マクロから開かれる) に、タイマー間隔を 0 に設定する on_Load イベントと、それを設定する on current イベントがある MS Access フロント エンド アプリケーションがあります。タイマー イベントは、アプリケーションの実行を開始します (バックエンドの SQL Server データベースなどへのアタッチ)。
アプリケーションの新しいコピーが新しい場所にコピーされると (新しいリリースがあるときに行います)、各ユーザーのマシンにコピーされます。アプリケーションの最初の呼び出しは、タイマーが起動しないように動作します。言い換えれば、現在のイベントが決して発生しないように見えます。
原因がわかりません。私が考えることができる唯一の説明は、リリース直前の起動テストでフォームを設定したため、現在のレコードは起動時にフォームがロードされたときに設定されたものであるということです.
これは本当ですか?そのために on_current イベントが発生しない場所、またはその他の理由を誰かが知っている状況はありますか。
on_current イベントが発生するまで待機する理由は、フォーム フィルターに応じて、接続するさまざまなデータベースのパラメーターを設定するデータ ソースがフォーム自体にあるためです (たとえば、運用 v テスト)。回避策は、オンロードイベントでタイマー間隔を設定することかもしれませんが、on_currentが正しいデータベースを設定する前にタイマーが起動する可能性のある競合状態につながります。そのリスクを回避したいと思います