Announcement

Collapse
No announcement yet.

Invalid operand for operator

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Invalid operand for operator

    Hallo zusammen,
    also bevor ich zu meinem Problem komme, möchte ich noch kurz sagen, wodurch der Fehler entsteht. Ich habe in den Code eine kleine Abfrage eingebaut, die das Datumsformat von Windows prüft, falls dieses nicht gleich des Programmes ist, wird dieses geändert. Nun habe ich das Datum beispielsweise auf tt-MM-jjjj stehn und führe mein Programm aus. Alle Programmteile funktionieren, bis auf eins, da erhalte ich, nachdem ich den Button zum Modul öffnen geklickt habe eine Fehlermeldung siehe Anhang.
    Was der Fehler bedeutet, steht ja im Link beschrieben.http://devzone.advantagedatabase.com...r_operator.htm.
    Weis aber leider nicht, was ich am schlausten tun soll. Finde die line wo der Fehler auftritt leider nicht. Oder ist das ne Einstellungssache in Komponenten?
    Bitte um Hilfe
    mfg

    P.S. Bei tt.MM.yyyy funktioniert alles 1A.
    Attached Files
    Zuletzt editiert von Metallicwar; 12.08.2010, 10:30. Reason: P.S. Bei tt.MM.yyyy funktioniert alles 1A.

  • #2
    kleiner Zusatz:

    d := SQLDate(DateEdit1.Date);
    + ' WHERE fs.StartDatum <= ' + d + ' AND fs.EndeDatum >= ' + d + ' '
    in dieser Zeile ist irgendwas falsch, denn wenn ich diese Zeile aus der SQL-Abfrage entferne, läuft das Modul ohne Fehlermeldung.
    Liegt das an dem SQLDate oder an dem fs.StartDatum ??
    Was passt da nicht?
    Zuletzt editiert von Metallicwar; 13.08.2010, 10:18. Reason: ^^

    Comment


    • #3
      hab mir mal "d" in ner ShowMessage anzeigen lassen und da wunderst mich nicht, dass es knallt^^.
      d = 13.08.2010
      Datumformat von Windows steht aber auf TT-MM-JJJJ
      wenn ich schreibe d := SQLDate(StrToDate(mapDB.AdsSettings1.DateFormat)); dann spuckt er mir, wenn ich das Modul öffne die Fehlermeldung aus, dass tt-MM-jjjj kein gültiges Datum sei.
      oo????

      Comment


      • #4
        soo wieder ein stück weiter.. ohne Hilfe, aber vll gehts ja schneller, wenn mir mal jmd weiterhilft^^
        also:
        DateEdit1 = TcxDateEdit

        Bei dieser Komponente gibts die Eigenschaft Date. Diese ist gefüllt mit dem Wert: 0000/00/00.

        TcxCustomDateEdit.Date: Determines the currently displayed date value.
        Liegt das an dieser Eigenschaft, dass mein Programm immer in diesem Modul knallt?

        Comment


        • #5
          grundsätzlich: um solcherlei und andere Probleme zu vermeiden, verwende man Parameter

          Comment


          • #6
            Hallo Herr Dürr,
            könnten Sie mir einen kleinen Beispielcode zeigen?

            Comment


            • #7
              AdsQuery1.SQL.Text:='select * from mytable where datefield=:dt';
              AdsQuery1.ParamByName('dt').AsDate:=date();
              AdsQuery1.Open();

              Comment


              • #8
                danke erstmal, was genau bewirkt diese Abfrage nun?

                Comment

                Working...
                X