Я пытаюсь отфильтровать некоторые записи из TADOQuery. Я установил свойство filter в true, и когда я установил фильтр в поле = 'значение', все работает нормально. Я хотел бы динамически создать этот фильтр, прилагаяФильтр TADOQuery и выражение всегда true
<space>AND field='value'
к значению всегда правда, и я думал, что 1 = 1 будет делать трюк. Таким образом, я бы использовал 1 = 1 в качестве фильтра по умолчанию, а затем просто приложил AND field='value'
к нему по мере необходимости.
Это, впрочем, не работает. Сообщение об ошибке выглядит следующим образом:
Аргументы неправильного типа, находятся в допустимом диапазоне или находятся в конфликте друг с другом.
Не могли бы вы рассказать мне, что я мог бы использовать в качестве универсального всегда истинного выражения для этого фильтра?
Спасибо за понимание. Я полагал, что это будет что-то вроде этого (вне пределов понимания;)). Я решил, что просто не буду беспокоиться о первом «И», и перед применением фильтра я удалю первые пять букв: «filter: = copy (filter, 5, length (filter) -4);' –
You означает удаление первых ** 4 ** символов, не так ли? Вы можете написать это как 'filter: = Copy (filter, 5, MaxInt)' (вам не нужна часть Length (...). – Edelcom
я не понимаю спасибо. Вернулся в delphi после двухлетнего перерыва :) –