Re: Datumseinschränkung wird nicht akzeptiert
Versuch's mal so:
SQL-Code:
Grüße
SELECT trunc(Date_Completed) as Datum from qguaradm.DELIVERIES d where d.Firm_ID='32770' and d.Status <>'--' and trunc(d.date_completed) between TO_DATE('01.01.2007', 'DD.MM.RRRR') and TO_DATE('05.03.2007', 'DD.MM.RRRR')
Mikhal |
Re: Datumseinschränkung wird nicht akzeptiert
Nein, mir fällt nichts auf! Sind einfach nur Datums angaben.
Irgentwie zeigt er nur diese 4. Wenn ich andere aufrufe kommen keine Daten! @mikhal auch so, bekomme ich nur 4 Datensätze. Im Query Reporter aber alle, also dürfte es nicht am String liegen! |
Re: Datumseinschränkung wird nicht akzeptiert
Mein Fehler: ich habe selbst das Trunc vergessen:
SQL-Code:
SELECT trunc(Date_Completed) as Datum from qguaradm.DELIVERIES d where d.Firm_ID='32770' and d.Status <>'--' and trunc(d.date_completed) between TRUNC(TO_DATE('01.01.2007', 'DD.MM.RRRR')) and TRUNC(TO_DATE('05.03.2007', 'DD.MM.RRRR'))
|
Re: Datumseinschränkung wird nicht akzeptiert
@mikhal
Auch mit dem Trunc funkioniert es in Delphi nicht. Ist doch ziemlich komisch, liegt das an mir oder an Delphi, habe doch alles so übergeben, das es funktionieren sollte, auch der String geht! MIST! |
Re: Datumseinschränkung wird nicht akzeptiert
Ohne weiteren Quelltext wird dir dann kaum jemand weiterhelfen können. Laß mal die entsprechende Procedure sehen, in der du dieses Statement zusammenbaust und aufrufst.
Grüße Mikhal |
Re: Datumseinschränkung wird nicht akzeptiert
Kombinier mal den Cast mit dem TO_DATE.
|
Re: Datumseinschränkung wird nicht akzeptiert
OK Hier mal der Quelltext....
Delphi-Quellcode:
Das durchlaufen der Einträge ist nur zum test. Eigentlich übergebe ich án der Stelle an RaveReport.
Bericht_query.close;
bericht_project.Open; //Qguar_Abfragen(); Bericht_query.SQL.Clear; Bericht_query.SQL.Text := 'SELECT trunc(Date_Completed) as Datum from qguaradm.DELIVERIES d where d.Firm_ID=''32770'' and d.Status <>''--'' and trunc(d.date_completed) between trunc(TO_DATE(:Datum_von, ''DD.MM.RRRR'')) and trunc(TO_DATE(:Datum_bis, ''DD.MM.RRRR''))'; //Bericht_query.SQL.Text := Bericht_SQL_String; Bericht_query.Parameters.parambyname('Datum_von').Value:=strtodatetime('01.01.2007'); Bericht_query.Parameters.ParamByName('Datum_bis').Value:=strtodatetime('05.03.2007'); Bericht_query.SQL.SaveToFile('c:\a.txt'); Bericht_query.Open; Bericht_query.First; While not Bericht_query.Eof do Begin Showmessage(Bericht_query.FieldByName('Datum').AsString); Bericht_query.Next End; |
Re: Datumseinschränkung wird nicht akzeptiert
SQL-Code:
SELECT Cast(Date_Completed as Date) as Datum from qguaradm.DELIVERIES d where d.Firm_ID=''32770'' and d.Status <>''--'' and trunc(d.date_completed) between TO_DATE(:Datum_von, ''DD.MM.RRRR'') and TO_DATE(:Datum_bis, ''DD.MM.RRRR'')';
|
Re: Datumseinschränkung wird nicht akzeptiert
"Literal stimmt nicht mit dem Format der Zeichenfolge überein"
:( |
Re: Datumseinschränkung wird nicht akzeptiert
Warum wandelst du die beiden DateTime-Werte für deine Datumsparameter in deinem SELECT-Statement noch einmal in ein DateTime?
Die Eigenschaft Prepared musst du jedesmal auf True setzen, wenn du Parameter geändert hast!
Delphi-Quellcode:
Das oben kann nur funktionieren, wenn die Parameter auch tatsächlich als Typ TDate oder TDateTime haben.
Bericht_query.close;
bericht_project.Open; //Qguar_Abfragen(); Bericht_query.SQL.Clear; // Warum willst du ein DateTime in ein DateTime casten??? Bericht_query.SQL.Text := 'SELECT trunc(Date_Completed) as Datum from qguaradm.DELIVERIES d where d.Firm_ID=''32770'' and d.Status <>''--'' and trunc(d.date_completed) between trunc(:Datum_von) and trunc(:Datum_bis)'; //Bericht_query.SQL.Text := Bericht_SQL_String; Bericht_query.Parameters.parambyname('Datum_von').Value:=strtodatetime('01.01.2007'); Bericht_query.Parameters.ParamByName('Datum_bis').Value:=strtodatetime('05.03.2007'); Bericht_query.SQL.SaveToFile('c:\a.txt'); Bericht_query.Prepared := True; // => du übergibst hier zwei neue Parameter ! Bericht_query.Open; Bericht_query.First; While not Bericht_query.Eof do Begin Showmessage(Bericht_query.FieldByName('Datum').AsString); Bericht_query.Next End; Grüße Mikhal |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz