Supportnet / Forum / Datenbanken
Abfrage will Wert wissen, obwohl sie ihn nicht braucht
Frage
Hallo!
Mein Problem ist schwer zu beschreiben, ich versuch´s mal:
In meiner Abfrage kommen Parameter in Wenn-Bedingungen als Kriterium vor. Wenn die Abfrage startet will sie alle vorkommenden Parameter wissen, auch die, die in den ELSE-Teilen vorkommen und vielleicht gar nicht gebraucht werden.
In meinem Fall sind das Parameter aus verschiedenen Formularen, wobei ich aber nur eines gleichzeitig benutze. (Ich starte die Abfrage aus einem von 2 Formularen.) Dementsprechend existiert der Parameter in dem ELSE-Teil gar nicht (das wäre der Fall, wenn ich das andere Formular benutzt hätte), aber die Abfrage möchte ihn trotzdem wissen. Man kann jetzt irgendetwas eingeben. Das Ergebnis ist richtig. Aber die Eingabeaufforderung stört erheblich.
Momentan benutze ich halt 2 verschiedene Abfragen, aber da dieses Problem mehrfach auftritt, steigt die Zahl meiner Abfragen schnell.
Weiß jemand Rat?
Vielen Dank im Voraus.
Antwort 1 von erik
Wenn die Abfrage zwei Parameter hat, dann müssen beide auch gefüttert werden, ignorieren geht nicht. Entweder machst du daraus zwei Abfragen mit den jeweiligen Teilfiltern oder du weist deine Formulare an, immer beide Parameter zu bestücken, jeweils mit einem richtigen Wert und einem Null-Wert. Mit dem folgenden Beispiel werden die Null-Parameter wirkungslos und stören nicht.
... WHERE (Feld1=[Filter1] AND [Filter2] Is Null) OR (Feld2=[Filter2] AND [Filter1] Is Null)
... WHERE (Feld1=[Filter1] AND [Filter2] Is Null) OR (Feld2=[Filter2] AND [Filter1] Is Null)

