Access-o-Mania

Access-Forum (Deutsch/German) => Bericht => Thema gestartet von: Sgl am Dezember 01, 2014, 13:36:33

Titel: Formatfehler bei Berichtsfilter
Beitrag von: Sgl am Dezember 01, 2014, 13:36:33
Hallo zusammen,

ich habe einen Bericht bei dem ich u.a. nach einem bestimmten Datum die Ausgabe filtern möchte.

Dazu verwende ich einen Button mit folgenden Code:
DoCmd.OpenReport "rpt_Bestellungen", acPreview, "", "text_Lieferdatum = " & Me.Lieferdat
DoCmd.Maximize

Dabei erscheint folgender Fehlertext:
Syntaxfehler in Zahl in Abfrageausdruck '(txt_Lieferdatum = 05.09.2014'.

Hat jemand für mich einen Hinweis?

Danke!

Sven
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: DF6GL am Dezember 01, 2014, 13:59:53
Hallo,

Hinweis:  Das Datum muss als USA-Format oder ISO-Format  vorliegen, sofern es sich bei "text_Lieferdatum" um ein Datum/Uhrzeit-Tabellenfeld handelt.

Sollte das Tabellenfeld vom Datentyp TEXT sein, ist die Tabellenkonstruktion falsch.


Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: Sgl am Dezember 01, 2014, 15:32:56
Hallo Franz,

nein das Format in der Tabelle ist als Datum/Uhrzeit formatiert und auch die Textfelder sind unter Eigenschaften mit dem Datumsformat definiert.

Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: DF6GL am Dezember 01, 2014, 17:25:19
Hallo,


Format(ierung) und Datentyp sind zwei Paar Schuhe...

Der DATENTYP in der Tabelle für das Datumsfeld muss DATUM/UHRZEIT  sein.

Die Formatierung der Felder ist unerheblich.

Insofern muss die Codezeile so lauten:

DoCmd.OpenReport "rpt_Bestellungen", acPreview, "", "text_Lieferdatum = " & Format(Me.Lieferdat,"\#yyyy-mm-dd\#")

Wenn es sein kann, dass Me!Lieferdat leer ist oder bleibt, dann sollte dies berücksichtigt werden:
DoCmd.OpenReport "rpt_Bestellungen", acPreview, "", "text_Lieferdatum = " & Format(nz(Me.Lieferdat,Date) ,"\#yyyy-mm-dd\#")
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: Sgl am Dezember 02, 2014, 10:59:13
Hallo Franz,

mit dem Code wird nun der Datumsparameter abgefragt.
Das führt dazu dass er mir bei Eingabe des Datums im Format "2014-11-27" keine DS anzeigt, während bei anderem Format ALLE DS angezeigt werden.
Ich möchte ja auch dass der Wert im Berichts-Textfeld Europäisch angezeigt wird. Also dd.mm.yyyy.
Wie bekomme ich dafür die Übersetzung hin? Brauche ich dazu ein zusätzliches Feld in meiner Tabelle?
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: MzKlMu am Dezember 02, 2014, 11:09:13
Hallo,
stelle das Format des Berichtsfeldes auf das gewünschte Format ein. In den Eigenschaften des Feldes, das reicht.
Wie bereits gesagt, ist das Format bedeutungslos und im Rahmen der verwendeten Kurzzeichen frei wählbar und unabhängig vom Feldinhalt.
Datentyp Datum/Zeit vorausgesetzt.
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: DF6GL am Dezember 02, 2014, 12:03:53
Hallo,

ZitatDas führt dazu dass er mir bei Eingabe des Datums im Format "2014-11-27" keine DS anzeigt

Niemand spricht von der "Eingabe" eines solchen Datums in das Form-Textfeld.  Gib dort ein (deutsches) gültiges Datum (z. B. 2.12.14)  ein..

Zur Formatierung hat Klaus schon einen Hinweis gegeben.
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: Sgl am Dezember 02, 2014, 13:33:44
Hallo,

also mit Eingabe war die Eingabe in die sich öffnende Parameter-Abfrage gemeint. Dabei sollte ja eigentlich auch das Datum aus der zu Grunde liegenden Abfrage des Formulars genommen werden.
Bei einem anderen Kriterium im Textformat funktioniert das auch (über einen separaten Button).

Ich habe das Feld im Bericht, im Ufo und in der Tabelle auch auf das Datumsformat eingestellt, aber das bringt noch keine Veränderung.
Titel: Re: Formatfehler bei Berichtsfilter
Beitrag von: Sgl am Dezember 02, 2014, 13:44:14
Und gefunden!

Ich habe die Bezeichnungen der Bezugsfelder nochmal überprüft und angepasst, jetzt funktioniert es wie es soll.
Danke für Eure Hinweise!
Sven