Показать сообщение отдельно
Старый 23.03.2019, 12:18   #2  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,038 / 1629 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Что-то на моей практике никто не требовал " = поле должно показывать текущий фильтр при входе на форму и при изменении критерия стандартными средствами (тот же Ctrl+F3)". Это выглядит усложнением

Т.е. стандартно я делаю так
1.Для фильтров создаю временную таблицу. Это имхо позволяет удобно общаться со значениями фильтров и дает нормальный переход к основной таблице.
2. В classDeclaration формы добавляется Range или в твоем случае ссылка на QBDS. На init формы или датасорса инициализация этого Range(с признаком locked)
3. В executeQuery основной таблицы простановка в этот Range значения из полей временной таблицы(ну или в твоем случае дизейблинг датасорса)
4. На modified всех полей временной таблицы стоит executeQuery основной таблицы

В 2012 можно поиграться с addFilter на источнике данных, он вроде будет корректно работать с outerJoin
За это сообщение автора поблагодарили: mazzy (2), Corel (1).