にパラメータを提供するためにどのように、どのようにクエリにパラメータを供給しない?:MSアクセス:次のセットアップ特定のクエリに基づくサブフォームコントロール
- フォームAはSubformAが含まれています。
- SubformAは、保存されたクエリであるQueryAをSourceObjectとして使用します。
- QueryAはパラメータ宣言を使用します
- FormAには、QueryAにパラメータを供給するコントロールが含まれています。
FormAのコントロールの名前がQueryAのパラメータと同じ場合、これは一般的に機能します。例外は、フォームが読み込まれるときです。このとき、AccessはQueryAのパラメータを求めるプロンプトを表示します。 SubformAのSourceObjectをデザインビューで空白にし、FormAのForm_LoadイベントでSourceObjectを定義することで、この問題を回避しようとしています。 FormAのコントロールの値を設定し、SubformAのSourceObjectを設定しています。ただし、Accessは引き続きパラメータの入力を求めています。私の次の考えは、QueryDefとしてQueryAへの参照を取得し、QueryDefのパラメータを定義することでしたが、QueryDefをSubformAのSourceObjectとして割り当てる方法はないようです。フォームの読み込み時にユーザーにパラメータの入力を促さないという目的をどのように取得するかについての考えはありますか?
なぜ、パラメータではなくリンクの子フィールドとマスターフィールドを使用していませんか?これらの問題はなくなるはずです。 – Fionnuala
この場合、FormAはバインドされていないため、リンクするものはありません。詳細が役立つ場合、FormAにはListBox(RowSourceとしてSQL文を使用する)と2つのTextBox日付フィールドが含まれています。 ListBoxの選択は、WHERE table_field IN FormAListBoxSelectionsの行に沿って何かをQueryAの結果にフィルタリングするために使用されます。 QueryA自体はいくつかのテーブルを結合する他のいくつかのクエリの集合体である – Adam
フォームaが(a)コントロールが含まれているだけですが、この場合は適合しないことがわかります。読み込まれたときにフォームをフィルタリングする必要があるというビジネスルールはありますか?選択するフォームをユーザーに提示することに異論はありませんか条件が満たされていないか完全に完全であるか完全に空のリストであるかどうかを確認することができますか?これが不可能な場合は、前の選択をユーザーに提示することについてどのように感じますか? – Fionnuala