Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

3075 - Syntaxfehler (fehlender Operator) in Abfrageausdruck

Begonnen von x-toph, März 05, 2014, 22:57:11

⏪ vorheriges - nächstes ⏩

x-toph

Hallo,
ich habe folgendes Problem.
Ich habe eine Datenbank, in welcher Rehabilitationspläne für Patienten einer Einrichtung erstellt werden können, welche den Patienten pro Woche als Wochenplan ausgehändigt werden. Soweit so gut.
Aus diesen Daten werden ebenfalls die Informationen für die Mitarbeiter der Einrichtung gezogen, da diese natürlich wissen müssen, mit welchen Patienten(gruppen) sie wann und wo Rehabilitationsmaßnahmen abzuhalten haben.
Ich habe die Beispieldatenbank im Anhang mal auf das wesentliche reduziert.
Nach dem einloggen (Passwort = Passwort) gelangt man über den Button "Planübersicht" zum eigentlichen Problemformular, in welchem über die Kombifelder Kalenderjahr > Kalenderwoche > Wochentag das Listenfeld mit den Planungen des Tages gefüllt wird, welche man auswählen kann und dadurch ein Unterformular öffnet. Und genau hier liegt mein Problem, denn beim klicken auf die Planung im Listenfeld bekomme ich die Fehlermeldung

Filter Function Error
3075 - Syntaxfehler (fehlender Operator) in Abfrageausdruck '[KalenderJahr]=2014 AND [KW]= 8 AND [WT]=2 AND [lngZeitVon]=14:51:00'

Die Kombifelder werden via VBA gefüllt. Die Uhrzeit ist in den Tabellen und Abfragen auf 24h eingestellt, weshalb mich die Angae der vollen Uhrzeit in der Fehlermeldung verwundert.
Ich hoffe, ich habe alles ausführlich genug beschrieben, so dass mir jemand helfen kann, denn ich verzweifle nun schon über eine Woche an diesem Problem.
Besten Dank im Vorraus.

Hondo

Hallo,
2 Dinge sind mir adhoc aufgefallen.
1. in der Abfrage für das Unterformular ist KW ein String, du solltest mit cdbl(Format(...)) arbeiten in der Abfrage.
2. In der Tabelle und im Form steht die Zeit formatiert ohne Sekunden. Beim Formatieren sind dann aufeinmal die Sekunden da.
Datum/Zeit Felder allgemein sind in Hochkommatas einzuschließen.

Gruß Andreas

DF6GL

Hallo,



das Tabellenfeld "lngZeitVon" ist vom Datentyp Datum/Uhrzeit .   Insofern ist das Kriterium in der Where-Condition für das Feld mit diesem Datentyp zu generieren:

If Not IsNull(Me!cblStunden) Then
    strFilter = strFilter & " AND [lngZeitVon] = " & [color=red]Format(Me!cblStunden, "\#hh:nn:ss\#")[/color]
End If



ZitatDie Uhrzeit ist in den Tabellen und Abfragen auf 24h eingestellt
Das ist lediglich eine Ausgabeformat-Angabe und hat mit dem Tabellen-Datentyp nichts zu tun.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

x-toph

Vielen Dank für die sehr schnellen Antworten.
Der Ansatz von DF6GL hat auch die Lösung gebracht.

Bezüglich der Angaben von Hondo werde ich mich heute Abend noch einmal belesen, denn mit "cdbl(Format(...))" habe ich noch nie gearbeitet, bzw. sogar noch nie irgendwo gehört, oder gelesen.  :-[

Ich werde das Thema nun als gelöst markieren.

Vielen Dank!

DF6GL

Hallo,

cdbl() ist lediglich eine Funktion, die einen (geeigneten) Wert in den Datentyp "Double" umwandelt.  Ein Datentyp "Datum/Uhrzeit" wird intern ebenfalls als "Double" gehandelt, so dass bei solchen Vergleichen wieder datentyp-bezogene Übereinstimmung herrscht.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access