SQL String für Listenfeld zusammenstellen

19/02/2009 - 20:06 von Günther Pachschwöll | Report spam
Hallo NGs,

Ich habe ein Dialogfenster mit dem ich nach Daten suchen kann,
und bei denen ich mit einem Doppelklick auf einen Eintrag zu
dem Datensatz springe. Das funktioniert auch ganz gut. Jetzt
möchte ich aber aus einer 2. Tabelle ein Kriterium verwenden,
dabei wird mein Listenfeld mit keinen Daten gefüllt. Ich habe
dazu meinen Code unten angefügt. Hat jemand einen Ansatz
was an der Codezusammenstellung falsch sein könnte?

Dim stringSQL As String
Dim stringKrit As String

stringKrit = Nz(Me!strSuchbegriff.Value, "")

dieser Code funktioniert --

stringSQL = "SELECT Personalnummer, Name" _
& " FROM tblLizenzen WHERE ((Name) LIKE '*" & stringKrit & "*')"
_
& " OR (Personalnummer LIKE '*" & stringKrit & "*')"

mit diesem Code will ich aus der tblPersonal den
Beschàftigungsstand
als Kriterium einbauen, leider ohne Erfolg --

stringSQL = "SELECT tblLizenzen.Personalnummer, tblLizenzen.Name FROM
tblLizenzen " _
& "INNER JOIN tblpersonal ON tblLizenzen.Personalnummer tblpersonal.Personalnummer" _
& "WHERE (((tblLizenzen.Name) LIKE '*" & stringKrit & "*') AND
((tblpersonal.Beschàftigungsstand)=0))" _
& "OR (((tblLizenzen.Personalnummer) LIKE '*" & stringKrit &
"*') AND ((tblpersonal.Beschàftigungsstand)=0))"

stringSQL = stringSQL & " ORDER BY tblLizenzen.Personalnummer"

Me!ListeSuche.RowSource = stringSQL
Me!ListeSuche.ColumnCount = 2
Me!ListeSuche.ColumnWidths = "0,75cm; 9,25cm"

mfg
Günther
 

Lesen sie die antworten

#1 Karl Donaubauer
19/02/2009 - 20:22 | Warnen spam
Günther Pachschwöll wrote:
Ich habe ein Dialogfenster mit dem ich nach Daten suchen kann,
und bei denen ich mit einem Doppelklick auf einen Eintrag zu
dem Datensatz springe. Das funktioniert auch ganz gut. Jetzt
möchte ich aber aus einer 2. Tabelle ein Kriterium verwenden,
dabei wird mein Listenfeld mit keinen Daten gefüllt. Ich habe
dazu meinen Code unten angefügt. Hat jemand einen Ansatz
was an der Codezusammenstellung falsch sein könnte?

Dim stringSQL As String
Dim stringKrit As String

stringKrit = Nz(Me!strSuchbegriff.Value, "")

dieser Code funktioniert --

stringSQL = "SELECT Personalnummer, Name" _
& " FROM tblLizenzen WHERE ((Name) LIKE '*" & stringKrit & "*')"
_
& " OR (Personalnummer LIKE '*" & stringKrit & "*')"

mit diesem Code will ich aus der tblPersonal den
Beschàftigungsstand
als Kriterium einbauen, leider ohne Erfolg --

stringSQL = "SELECT tblLizenzen.Personalnummer, tblLizenzen.Name FROM
tblLizenzen " _
& "INNER JOIN tblpersonal ON tblLizenzen.Personalnummer > tblpersonal.Personalnummer" _
& "WHERE (((tblLizenzen.Name) LIKE '*" & stringKrit & "*') AND
((tblpersonal.Beschàftigungsstand)=0))" _
& "OR (((tblLizenzen.Personalnummer) LIKE '*" & stringKrit &
"*') AND ((tblpersonal.Beschàftigungsstand)=0))"

stringSQL = stringSQL & " ORDER BY tblLizenzen.Personalnummer"

Me!ListeSuche.RowSource = stringSQL
Me!ListeSuche.ColumnCount = 2
Me!ListeSuche.ColumnWidths = "0,75cm; 9,25cm"



Schick deinen resultierenden SQL-String ins Testfenster:

Debug.Print stringSQL

Von dort kopierst du ihn in die SQL-Ansicht einer neuen Abfrage
und schaltest um in die Daten- und/oder Entwurfsansicht.
Dann siehst du wahrscheinlich schon den Fehler.

HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com
die 1. .NET-Entwickler-Konferenz für Accessler: www.donkarl.com?nek

Ähnliche fragen