PDA

Vollständige Version anzeigen : rNPhmr


<Veronika>
08.01.2002, 17:49
Hallo Leute,

ich habe hier ein Problem mit folgendem SQL-Code. Die Abfrage beruht auf mehreren Tabellen und bringt als Ergebnis u.a. Daten zu Mitarbeitern sortiert nach Bundesländern (LandID 1-16). Das Modul zur Berechnung der Feiertage erstellt jedoch auch einen Tabellenwert für bundesweit gültige Feiertage (LandID 0). Genau diesen Wert möchte ich nun in der Abfrage unterdrücken und
versuche, dies in die WHERE-Klausel einzubringen. Wer hat einen Tipp, wie ich das gemäß Syntax richtig anstellen muß?

Vielen Dank für die Hilfe. Gruß Veronika


Code:

strStundKrit = "[PERSNR]=" & intPersNr & " AND Month([Datum])=" & Me!cboBezugsmonat & " AND Year([Datum])=" & Me!cboBezugsjahr
sngIstStundenProMonat = DSum("Netto", "tblStunden", strStundKrit)
DatMitarbeiterGeburtstag = DLookup("Geburtsdatum", "tblMitarbeiter", "PersNr = " & intPersNr)
sngMitarbeiterAlter = DateDiff("yyyy", DatMitarbeiterGeburtstag, Date)
sngUrlaubstage = ZahlUrlaubstage(sngMitarbeiterAlter)
strsqlStundenUndLand = " SELECT tblMitarbeiter.PersNr, tblBundesland.LandID, tblBundesland.Bundesland, tblVertragstypen.Stunden"
strsqlStundenUndLand = strsqlStundenUndLand & " FROM tblBundesland INNER JOIN (tblVertragstypen INNER JOIN ((tblFilialen INNER JOIN tblMitarbeiter ON tblFilialen.Filialkürzel = tblMitarbeiter.Filialkürzel) INNER JOIN tblVerträge ON tblMitarbeiter.PersNr = tblVerträge.PERSNR) ON tblVertragstypen.Vertrags_ID = tblVerträge.Vertrags_ID) ON tblBundesland.LandID = tblFilialen.ID"
strsqlStundenUndLand = strsqlStundenUndLand & " WHERE (((tblMitarbeiter.PersNr)=" & intPersNr & "));"

MarioR
09.01.2002, 13:22
Hallo Veronika,

probier's mal so:

strsqlStundenUndLand = strsqlStundenUndLand
& " WHERE (((tblMitarbeiter.PersNr)=" & intPersNr
& ")) AND (tblBundesland.LandID<>0);"

Sollte LandID vom Typ Text sein, dann muss es <>'0' heissen.

vhoenn
10.01.2002, 08:50
Hallo MarioR,
vielen Dank für den Tipp. Ich werde diesen probieren und ich glaube, so wird es funktionieren.
Nochmals danke.
Veronika