Я использую DevExpress TdxMemData в памяти потомка TDataSet. Хотя он имеет свойства Filtered: Boolean и Filter: String, он, по-видимому, фактически ничего с ними не делает, вместо этого полагается на результат параметра Accept события OnFilterRecord.
Итак, я ищу способ (может быть, в TdxMemData или где-то еще в наборе кода DevExpress) проанализировать текст фильтра и применить его к набору данных.
В идеале я хотел бы проверить способ проверки отдельной строки на соответствие фильтру, чтобы убедиться, что она совпадает, не отфильтровывая ее из набора данных (я хочу выделить строки, соответствующие фильтру).
Пример строки фильтра:
((Name = 'Jim') and (Rep > 1000)) or (Rep > 5000)
Так что есть вложенные и и или или. Он на самом деле построен DevExpress TcxDBFilterControl.
Я действительно надеюсь, что что-то простое мне не хватает.
Обновление: Я открыл билет с DevExpress , чтобы посмотреть, поддерживают ли они какие-либо решения. Я нашел их стандартный ответ, что они не поддерживают фильтрацию в TdxMemData.