Platzhalter bei Parametereingabe in UNION-Abfrage

Hallo zusammen,

ich habe eine Inventardatenbank mit zwei Tabellen, die zum Teil gleiche Felder enthalten.
Zur Abfrage der Komponenten, die ein bestimmter Benutzer hat habe ich eine UNION-Abfrage wie folgt erstellt:

select Inventarnummer,Seriennummer,Peripherietyp,Kostenstelle,Hersteller,Bezeichnung,Benutzer,Abteilung,Standort1,Standort2 from [peripherie] where [Benutzer]=Benutzer_eingeben

UNION select Inventarnummer,Seriennummer,Peripherietyp,Kostenstelle,Hersteller,Bezeichnung,Benutzer,Abteilung,Standort1,Standort2 from [pc-system] where [Benutzer]=Benutzer_eingeben;

Das Ergebnis dieser Abfrage wird in einem Formular ausgegeben. Die Benutzernamen sind in dem Benutzer-Feld immer als „Nachnamen, Vornamen“ abgelegt. (z.B. Müller, Hans)
Ich habe nun das Problem, dass bei der Eingabe von Platzhaltern in dem Abfragefenster, diese offenbar nicht erkannt werden. Gebe ich zum Beispiel Müller* in das Abfragefenster ein, bekomme ich keine Datensätze im Ergebnis angezeigt. Gleiches mit Müller? oder *Müller* oder ?Müller?
Nur wenn ich exakt den Namen Müller, Hans eingebe, funktioniert alles bestens.
Frage: Wie kann ich es erreichen, dass ich hier Platzhalter verwenden kann und was muß ich ggf. an der UNION-Abfrage ändern.

Hört sich vielleicht einfach an, aber ich finde nirgens einen Hinweis dazu. Kann jemand helfen?

Gruß
Frank

Offenbar scheint dies ein Problem zu sein :wink:
Aber ich habe eine Lösung gefunden *hurra*.
Wenn ich die UNION-Abfrage wie folgt ändere, klappt es (allerdings nur mit Platzhaltern vor und nach dem Eingabestring). Also z.B.: *müller*

select
Inventarnummer,Seriennummer,Peripherietyp,Kostenstelle,Hersteller,Bezeichnung,Benutzer,Abteilung,Standort1,Standort2
from [peripherie] where [Benutzer] like [Benutzer_eingeben]
UNION select
Inventarnummer,Seriennummer,Peripherietyp,Kostenstelle,Hersteller,Bezeichnung,Benutzer,Abteilung,Standort1,Standort2
from [pc-system] where [Benutzer] like [Benutzer_eingeben];

Allerdings habe ich nun ein anderes Problem:
Ich möchte diese Daten aus der UNION-Abfrage per Schaltfläche direkt an einen Bericht zum (formatierten) Ausdrucken senden (mit dem bereits eingestellen Filter des aktuellen Benutzers).
Dummerweise werde ich aber beim Aufruf des Berichtes nochmal zur Eingabe des Benutzers aufgefordert. Als Quelle kann ich leider nicht dieses aktuelle Formular angeben.
Hat vielleicht hierzu jemand eine Idee? Kann man den Benutzernamen eventuell mit einer Variablen übergeben?

Merci
Frank

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Kann man

… eine Globale Variable in einem Modul Definieren
z.B.:
Global gvarMeineVariable as String
…den Benutzer String an die Variable übergeben:
gvarMeineVariable="*Meier*"
…in der Abfrage dann:
where [Benutzer] like ‚" & gvarMeineVariable & "‘

(Was man noch wissen sollte: Wenn die Variable kein String ist sondern Integer dann fallen die Hochkommata weg…where [Benutzer] like " & gvarMeineVariable & " )

Viel Erfolg
Stefan

Hallo Stefan,

vielen Dank für die Info.
Habe aber leider noch etwas Probleme (muß gestehen, dass ich noch nie ein Modul programmiert habe). Könntest Du mir freundlicherweise ein paar mehr Details geben? Wäre super nett!
Danke im voraus.

Frank


[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]