Einzelnen Beitrag anzeigen

lxo

Registriert seit: 30. Nov 2017
288 Beiträge
 
Delphi 12 Athens
 
#1

ClientDataSet Filter mit Fieldnames die mit einer Zahl anfangen

  Alt 14. Aug 2023, 14:34
Delphi-Version: 11 Alexandria
Hallo,

ich habe ein ClientDataSet mit Fields die einen FieldName haben der mit einer Zahl anfängt.
Damit kommt wohl der Expression-Parser (Data.DBCommon.TExprParser) nicht klar.

Klar könnte ich einfach einen Buchstaben vorne dran setzen, aber gibt es da evtl. eine Lösung für?
Hab schon mit Quotes einfache und doppelte probiert aber geht auch nicht.



Delphi-Quellcode:
var
  lCDS: TClientDataSet;
begin
  lCds := TClientDataSet.Create( nil);
  try
    lCDS.FieldDefs.Add( '1A', ftFloat);
    lCDS.FieldDefs.Add( '1B', ftFloat);
    lCDS.CreateDataSet;
    lCDS.Filter := '(1A > 0) and (1B > 0)';
    lCDS.Filtered := True; // Im Projekt ... ist eine Exception der Klasse EDatabaseError mit der Meldung '')' erwartet, jedoch 'A' vorgefunden' aufgetreten.
  finally
    FreeAndNil( lCds);
  end;
end;
end;
  Mit Zitat antworten Zitat