2017-01-17 2 views
0

Ich versuche, eine combobox basierend auf einer Abfrage zu entwickeln. Die Abfrage schließt einen Mitarbeiter aus, wenn das Datum des Termins mit dem Datum übereinstimmt, für das die Abwesenheit geplant ist. Die Anweisung wird nur ausgeführt, wenn es sich um einen bestimmten Termintyp namens "Per Session" handelt. Also, wenn es ein "perSession" Termin ist Abfrage aller Mitarbeiter, die am Termin verfügbar sind. Else Alle Mitarbeiter anzeigen. hierSQL-Zugriffskriterien Ausschlüsse

IIf([Forms]![Scheduling]![ApptType]="PerSession",Not (([Staff].[ABS Date1])=("#" & [Forms]![Scheduling]![EvalDate] & "#")),([Staff].[ABS Date1]) Like "*") Or Is Null

Was bin ich?

+0

Was ist '[Stab]' hier ? Vielleicht fehlen Ihnen '[Forms]!' Afte 'Not' und vorher '(([Staff] .....' – harun24hr

+0

[Staff] ist eine Tabelle von Mitarbeitern, die in der Query-GUI nicht hinzugefügt wurden. [ABS Date1] Es ist ein einzelnes Datum, an dem sie nicht vorhanden sind, es ist ein Datumsfeld, aber ich möchte, dass dies ein Textfeld ist, das mehrere Daten enthalten kann, die durch ein Komma getrennt sind. –

Antwort

0

In Experimenten fand ich das Problem mit dem Designer. Der Designer geht davon aus, dass das Feld "Wo Kriterien" in der Spalte dem Ergebnis der Iif-Anweisung entspricht. Ich arbeitete jedoch daran, nicht gleich zu sein, wenn es wahr und gleich ist, wenn es nicht wahr ist. Mithilfe der SQL-Ansicht konnte ich die Iif-Anweisung schreiben, um die richtige SQL zu bewerten. Siehe unten. (IIf ([Formulare]! [Zeitplanung]! [ApptType] = "PerSession", (([Mitarbeiter]. [ABS Date1]) <> [Formulare]! [Zeitplanung]! [EvalDate]) OR ([Staff] . [ABS Datum1]) Null, ([Stab]. [ABS Datum1]) Wie "*" ODER ([Stab]. [ABS Datum1]) Ist Null)))

Verwandte Themen