Ich verwende ein DevExpress TdxMemData im Speicher TDataSet Nachkomme. Es hat zwar Filtered: Boolean und Filter: String-Eigenschaften, es scheint jedoch nicht automatisch irgendetwas damit zu tun, sondern verlässt sich auf das Ergebnis des Accept-Parameters des OnFilterRecord-Ereignisses.Überprüfen Sie in TDataSet Zeile gegen eine Filterzeichenfolge
Also nach was ich suche ist ein Weg (vielleicht ist es in TdxMemData oder woanders in DevExpress's Code-Reihe), den Filtertext zu analysieren und ihn auf das Dataset anzuwenden.
Idealerweise möchte ich eine Möglichkeit, eine einzelne Zeile mit dem Filter zu testen, um zu sehen, ob es übereinstimmt, ohne es aus dem Dataset zu filtern (ich möchte Zeilen hervorheben, die dem Filter entsprechen).
Beispiel Filter string:
((Name = 'Jim') and (Rep > 1000)) or (Rep > 5000)
So ist verschachtelt und die und oder der. Es wird tatsächlich von DevExpress TcxDBFilterControl erstellt.
Ich hoffe wirklich, es gibt etwas Einfaches, das ich vermisse.
Update: Ich öffnete eine ticket with DevExpress, um zu sehen, ob sie irgendeine Art von Lösung unterstützen. Ich habe ihre Lagerantwort gefunden, die they don't support filtering auf TdxMemData.
Das ist, was ich getan habe! –