| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > OnFilterRecord + ADOQuery.filter |
| Автор: Lunatikus 20.12.2007, 10:02 |
| Здравствуйте. Мне надо сделать несколько фильтров по набору данных,полученных с помощью ADOQuery(MS SQL 2000). С простыми фильтрами все просто - использую свойство filter.Но есть пара сложных фильтров,где надо сравнивать выражения типа поле1*поле2<0 или поле1+поле2<поле3. Filter такого не понимает и приходится обрабатывать OnFilterRecord.Однако,если обрабатывать все остальные фильтры,получается код в несколько десятков страниц-с каждым новым фильтром кол-во условий увеличивается лавинообразно.Поэтому я решил в OnFilterRecord обработать только улсовия на сложные фильтры. Однако срабатывает почему-то только filter,хотя в описании писалось,что они работают независимо друг от друга. В чем может быть проблема?Какой сценарий связанной работы этих двух методов фильтрации? |
| Автор: Lunatikus 20.12.2007, 10:19 |
| нашел ошибку.В обработчике писал по следующей схеме: IF (....) THEN accept:=true Когда переправил на accept:=(...) все условия стали выполняться. Однако схема взаимного впыолнения все равно не понятна. |