Einzelnen Beitrag anzeigen

Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#30

Re: Datumseinschränkung wird nicht akzeptiert

  Alt 5. Mär 2007, 13:17
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:
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;
Das oben kann nur funktionieren, wenn die Parameter auch tatsächlich als Typ TDate oder TDateTime haben.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat