Einzelnen Beitrag anzeigen

stoermi

Registriert seit: 1. Dez 2004
Ort: im Wald von Thüringen
75 Beiträge
 
Delphi 6 Enterprise
 
#13

Re: Datenbankabfrage mit Paradox - doch nur Fehler...

  Alt 17. Dez 2004, 17:11
Hi!
Nein, das Problem ist, dass, wenn das Zimmer noch gar nicht gebucht ist, gar kein Termin drin steht, somit kann ich natürlich auch keinen letzten Termin auslesen. Der ist dann 0, was für das Datum eben den 30.12.1899 bedeutet.
Doch das kann ich mit Paradox nicht abschalten, weil das ja keine verschachtelten Abfragen akzeptiert.
Deshalb muss man das umständlich mit if anweisungen machen.
Aber jetzt funktionier es...
Delphi-Quellcode:
    if blgt=0 then
    begin
      with BuchungenQuery do
      begin
        sql.clear;
        sql.add('SELECT MIN(anreise) AS next FROM daten\buchungen.db WHERE (Zimmer=:zimmernummer) AND (anreise>:pdatum)');
        ParamCheck := true;
        ParamByName ('pdatum').AsDate := datum;
        ParamByName ('zimmernummer').AsString :=zimmerObj[i].zimNum;
        open;
        if BuchungenQuery.RecordCount > 0 then
        begin
          first;
          frei := BuchungenQuery.FieldByName('next').AsDateTime;
        end
        else frei:= datum+365;
      end;
      if frei=0 then frei:=datum+365;
Das kann man vielleicht noch vereinfachen, aber ich habs mir jetzt nicht genau angeschaut... So ghet es aber auf jeden Fall!
  Mit Zitat antworten Zitat