Neuigkeiten:

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

Mobiles Hauptmenü

Datentypen Fehler - Syntaxfehler

Begonnen von virility, Juli 09, 2012, 11:16:41

⏪ vorheriges - nächstes ⏩

DF6GL

Hallo,

gibt es denn Datensätze mit dem angebenen Datum in Tabelle  "Reporting - Abgerechnete Daten" ??

Irgendwo sehe ich eine Diskrepanz zwischen der anfänglich geforderten Monatsangabe zur tatsächlich eingebenen Datumseingabe.... ???

virility

also in der tabelle "daten"
gibt es die spalte "lettercode".

diese entspricht von den inhalten her der spalte "durchf stationen" in der tabelle "Reporting - Abgerechnete Daten"

ich frage mich, warum überhaupt solche fehler auftreten. es halt alles funktioniert, dann wurde aus der datumsangabe jan2012 01.01.2012 gemacht.

jetzt läuft es nicht mehr. sonst wurde nichts geändert, lediglich eine neue funktion hinzugefügt.

wie überrpüfe ich denn ob ein datensatz geliefert wird?


@DF6GL
Ja, Datensätze gibt es ohne Ende im Reporting - abgerechnete Daten.
in der Spalte "abge-rechnet" steht halt das abrechnungsdatum, bspw. 01.05.2012 . Dann soll in dieser Spalte der Regionalcode ausgelesen werden "durchf station" und in der tabelle "daten" bei "status" ein A gesetzt werden. "durchf station" entspricht dem "lettercode"

virility

ich ziehe mir gerade ne aktuelle sicherungskope. muss 10min warten. nach ausführung des sql-error befehls hab ich nen fehler gefunden, an einer ganz anderen stelle....

database

Hi,

Zitatwie überrpüfe ich denn ob ein datensatz geliefert wird?

in dem du den SQL-String in den SQL-Abschnitt eines neuen Abfrageentwurfs einfügst  (Datum natürlich in Reinschrift einfügen und nicht als Variable) und dann die Abfrage auzsführst.

virility

#19
Bekomme jetzt die Fehlermeldung:

"Datentypen in Kriterienausdruck unverträglich"

in dieser Zeile:
DoCmd.OutputTo acOutputReport, "fax stationen - monat", acFormatRTF, "d:\tempo\" & rs!Lettercode & ".rtf", False


EDIT_
das heißt aber, dass es jetzt nur noch ein problem mit dem abspeichern gibt. ;-)

database

Hi,

Zitatdas heißt aber, dass es jetzt nur noch ein problem mit dem abspeichern gibt

Die Fehlermeldung deutet m.E. eher darauf hin, dass beim Aufruf des Reports was schief geht.

Lässt sich der Report  --- fax stationen - monat --- fehlerfrei öffnen?

Wenn nicht, ist der Fehler dort zu suchen.

virility

Also, im Entwurfsmodus lässt es sich öffnen, wenn es ich "normal" öffnen will, bekomme ich auch die Fehlermeldung mit dem Datentypen.

Das merkwürdige ist aber, dass ein anderes Makro auch dadrauf zugreift, und da funktioniert es.

DF6GL

Hallo,

überprüf die Berichtsabfrage, bzw.SQL-String in der Datenherkunft des Berichtes.  Dort gibt es ein Defizit mit dem Tabellenfeld-Datentyp und den angegebenen Kriterium.

virility

es gibt ein problem mit der datumsformatierung:

Dim sql As String

sql = "SELECT [Reporting - Abgerechnete Daten].Region, [Reporting - Abgerechnete Daten].[durchf Station]," & _
"[Reporting - Abgerechnete Daten].ART_II , [Reporting - Abgerechnete Daten].Mietvertrag, [Reporting - Abgerechnete Daten].Kennzeichen," & _
"format([Reporting - Abgerechnete Daten].Datum,'dd.mm.yy') as Datum , [Reporting - Abgerechnete Daten].HAENDLER_NAME, [Reporting - Abgerechnete Daten].[Handling-Fee]," & _
"[Reporting - Abgerechnete Daten].Service , [Reporting - Abgerechnete Daten].Distanz, [Reporting - Abgerechnete Daten].[Überführungs-pauschalen]," & _
"[Reporting - Abgerechnete Daten].Tank , [Reporting - Abgerechnete Daten].[Tank - netto], [Reporting - Abgerechnete Daten].[Tank-Haendler]," & _
"[Reporting - Abgerechnete Daten].[Tank-Haendler netto] , [Reporting - Abgerechnete Daten].Wäsche, [Reporting - Abgerechnete Daten].[Wäsche - netto], [Reporting - Abgerechnete Daten].[sonst Kosten], [Reporting - Abgerechnete Daten].[Abge-rechnet], [Reporting - Abgerechnete Daten].Gesamt," & _
"[Reporting - Abgerechnete Daten].[Versicherung], [Reporting - Abgerechnete Daten].[Tank-Haendler netto] + [Reporting - Abgerechnete Daten].[Tank - netto] AS Kraftstoff" & _
" FROM [Reporting - Abgerechnete Daten]" & _
"WHERE [Reporting - Abgerechnete Daten].[durchf Station] = '" & ola & "' and [Reporting - Abgerechnete Daten].[Abge-rechnet]='" & mon & "'" & _
" Order by kennzeichen, mietvertrag"

Me.RecordSource = sql

'" & ola & "
'" & mon & "

End Sub

DF6GL

Hallo,

nochmal:

welchen DATENTYP (nicht Format) hat das Feld  "Abge-rechnet" in der Tabelle?


Lt. dieser SQL hat (muss haben)  das Feld den Datentyp TEXT.


Bei Datum/Uhrzeit muss auch hier ein SQL-gültiges Datum(sformat,, USA- oder ISO-Format) angegeben werden:

"   WHERE [Reporting - Abgerechnete Daten].[durchf Station] = '" & ola & "' and [Reporting - Abgerechnete Daten].[Abge-rechnet]=" & Format(mon,"\#yyyy-mm-dd\#")  & _


Beachte auch das nötige Leerzeichen vor "Where"

virility

#25
Felddatentyp ist DATUM/UHRZEIT

Werde es jetzt mal in Text ändern

DF6GL

#26
Hallo,


NEIN!!!!!!!!!!!!!!!!!


Wir müssen erst mal manches klarstellen:


Wenn der Datentyp anfänglich TEXT war, dann war das falsch, hat aber möglicherweise durch die "TEXT-Datumswerte" insgesamt mehr oder weniger funktioniert.   Wenn mit diesen Risken zu leben ist und nicht an ALLEN betroffenen Stellen in der DB (Abfragen, VBA-Code, Berechnungen im Steuerelementinhalt mancher Textfelder)  angepasst werden soll/kann, dann lass es bei Datentyp TEXT. Damit wäre nur der Zusatzcode ensprechend diesen Datentyp zu programmieren. Dadurch ist und bleibt diese latente Fehlersituation vorhanden und kann zu unerwarteten Schwierigkeiten führen.


Wenn mit dem Tabellenfeld und dessen Datentyp "Datum/Uhrzeit" ein "richtiges" Datum mit all seinen Berechnungsmöglichkieten bearbeitet werden soll, das stell ALLE betroffenen Abfragen, Codestellen, usw. auf den Datentyp Datum/Uhrzeit um. Das bedeutet aber eine gründliche Überarbeitung der DB, was aber sich als lohnend herausstellen dürfte.




virility

#27
ok. ging auch nicht :-)

ich habe es bei datum/uhrzeit gelassen

und noch folgendes im bericht hinzugefügt:

Dim SQLDatum As String
SQLDatum = Format(frage, "\#yyyy\-mm\-dd\#")

"   WHERE [Reporting - Abgerechnete Daten].[durchf Station] = '" & ola & "' and [Reporting - Abgerechnete Daten].[Abge-rechnet]=" & Format(mon, " & SQLDatum & ") & _

virility

#28

EDIT:

Syntaxfehler (fehlender Operator) in Abfrageausdruck '[Reporting - abgerechnete Daten].[durchf Station]="and [Reporting - abgerechnete Daten.[abge-rechnet]='.

DF6GL

Hallo,

was soll das :

Dim SQLDatum As String
SQLDatum = Format(frage, "\#yyyy\-mm\-dd\#")

"   WHERE [Reporting - Abgerechnete Daten].[durchf Station] = '" & ola & "' and [Reporting - Abgerechnete Daten].[Abge-rechnet]=" & Format(mon, " & SQLDatum & ") & _


???