![]() |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Danke für deine Antwort,
Ich muß dich aber enttäuschen.. Zitat:
Zitat:
...ich liebe Vista :evil: :hi: |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Zitat:
|
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
:wink: weis ich, aber das Zitat stammte aus einer Antwort vor deiner Version mit EncodeDate.
|
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Hallo,
Zitat:
Also dann mal bitte mit:
Delphi-Quellcode:
dann mit
'select count(ID) from BEHANDLUNG where DATUM >= :Datum1 and DATUM <= :Datum2 and KUNDENNUMMER = :Kunde';
Delphi-Quellcode:
dann mit
'select count(ID) from BEHANDLUNG where KUNDENNUMMER = :Kunde and DATUM between :Datum1 and :Datum2';
Delphi-Quellcode:
dann mit
'select count(ID) from BEHANDLUNG where 1 = 2 and KUNDENNUMMER = :Kunde and DATUM between :Datum1 and :Datum2';
Delphi-Quellcode:
wobei :Datum1 = 31.01.2009 und :Datum2 = 01.03.2009.
'select count(ID) from BEHANDLUNG where KUNDENNUMMER = :Kunde and DATUM between :Datum1 and :Datum2';
dann mit
Delphi-Quellcode:
wobei :Datum1 = 31.01.2009 und :Datum2 = 01.03.2009.
'select count(ID) from BEHANDLUNG where KUNDENNUMMER = :Kunde and DATUM > :Datum1 and DATUM < :Datum2';
Gibt es auch andere Monate, in denen Count = 0 ist? Wenn nein, dann mal für alle Monate probieren:
Delphi-Quellcode:
Das muss also immer eine leere Ergebnismenge liefern. Wenn's jetzt immer kracht, dann liegt das Problem nicht im Datum, sondern in der leeren Ergebnismenge.
'select count(ID) from BEHANDLUNG where 1 = 2 and KUNDENNUMMER = :Kunde and DATUM between :Datum1 and :Datum2';
Wenn's dann immer noch nicht geht, werden für Februar Betriebsferien angeordnet 8) |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
:wink: das riecht ja nach richtig Arbeit deine Vorschläge :wink:
...werd ich der Reihe nach mal abarbeiten. :thumb: Die leere Ergebnismenge sollte kein Problem darstellen, da auch andere Monate Count=0 haben und sich nicht beschweren. Zitat:
Danke für deine Zeit...ich melde mich dann. PS: kann etwas dauern, sorry :( |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Hallo,
definier doch mal anständige Variablen tdtStartDate, tdtEndDate (TDateTime) oder sStartDate, sEndDate (String). Besser ist halt AsDate (AsDateTime) zu verwenden. Dann Breakpoint drauf und guggern. Ich habe FB2.0.3 mal ausprobiert. Die Meldung kommt nur, wenn das Datum falsch ist. Heiko |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Sorry für die späte Antwort...
Delphi-Quellcode:
- auch diese Variante bringt die Exception
ZQueryStatistikKunde.SQL.Text:= 'select count(ID) from BEHANDLUNG where DATUM between :Datum1 and :Datum2 and KUNDENNUMMER = :Kunde';
ZQueryStatistikKunde.ParamByName('Datum1').AsDate:= StartOfAMonth(Jahr,M); ZQueryStatistikKunde.ParamByName('Datum2').AsDate:= EndOfAMonth(Jahr,M); ZQueryStatistikKunde.ParamByName('Kunde').asString:= 'STRING'; ZQueryStatistikKunde.Open; - auch verschiedene feste "Februar Werte" erzeugen den Fehler - sobald der Parameter Kunde im "STRING" ein alphanumerisches Zeichen enthält kommt der Fehler - Parameter Kunde nur mit Zahlen im String, Bsp: '1234' laufen auch im Februar durch ...ich bin noch nicht schlauer :( Danke an alle :wink: UPDATE: - nach vielen Probierereien, auch mit anderen Zugriffskomponenten, das Ergebnis: :warn: trotzdem ich alle Daten mit diversen Tools lesen kann...die Datenbank selbst ist fehlerhaft, warum auch immer :gruebel: - das mit dem Vista war nur, weil ich mit 2 Datenbanken entwickelt habe und die korrupte auf dem Vista lag. :roll: Danke an alle für die Hilfe :hi: |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Vielleicht die Abfrage mal umstellen, wenn Kunde auch Einfluss auf den Fehler hat:
SQL-Code:
select count(ID) from BEHANDLUNG where DATUM between :Datum1 and :Datum2 and KUNDENNUMMER = :Kunde
zu select count(ID) from BEHANDLUNG where KUNDENNUMMER = :Kunde and DATUM between :Datum1 and :Datum2 |
Re: Phänomenale Fehlermeldung unter Vista...zum Rätseln
Danke für Deine Hilfe :wink:
das einzige, was was gebracht hat war eine neue Spalte anlegen, die Daten in die neue Spalte, Spalte Kundennummer löschen, Spalte Kundennummer neu und die Daten wieder zurück....oder die komplette DB neu erzeugen. Warum die Spalte so ein merkwürdiges Problem hatte...nicht nachvollziehbar :gruebel: Danke für Eure Zeit... :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz