|
![]() |
#1 |
Участник
|
Цитата:
если разрешать редактирование в диалоге, то приклось бы делать программный lookup к каждому фильтру (см. как сделаны лукапы в форме критериев, которая взывается по кнопке Выбор). что, с одной стороны, наложило бы ограничения на программистские лукапы, а с другой стороны непомерно усложнило бы диалог. кроме того, непременно надо было бы давать возможность управления видимостью и доступностью... Не говоря уже о добавлении новых фильтров... поэтому я предполагаю, что это здоровая леность программистов. я не думаю, что здесь заложен какой-то глубинный смысл. |
|
![]() |
#2 |
Участник
|
А разве lookup не зависит от ExtendetDataType контрола? Мне так видится напротив реализация разных лукапов для одной и той же колонки грида - посложнее будет.
Самым сложным моментом мне сдесь представляется оперативная синхронизация значений фильтров в диалоге и на форме выбора. Т.е. необходим программный modified Цитата:
Осталось только победить лень ![]() |
|
![]() |
#3 |
Участник
|
Цитата:
Если EDT контрола позволяет вводить максимум 20 символов, то никаким образом в него нельзя будет ввести длинный критерий (хотя бы в 200 символов). В окошке ввода критериев используется тип Criterias, а не EDT ![]() Цитата:
Не надо. Разберитесь как работает форма критериев. Посмотрите на ее методы. Подумайте - а оно нужно? Вернемся к первоосновам: 1. dialog - простой класс для работы с простыми динамически создаваемыми диалогами. 2. если нужен сложный диалог (в том числе со сложной логикой), то лучше нарисовать отдельное окно, объявить его диалогом и... (см. методику работы с диалогами) если в простом диалоге появится возможность вводить критерии непосредственно, то придется такую же возможность вводить и в диалоги-отдельные-окна. А судя по вопросам на форуме народ и так предпочитает извращаться и усложнять простые диалоги, чтоы просто нарисовать свой было бы намного проще. А тут еще один усложняющий момент появится... |
|
![]() |
#4 |
Участник
|
Это всё понятно. Хочешь сложный фильтр - используй форму выбора. А простой можно и непосредственно на дилоге задать.
Просто бывает, что для удобства пользователей часто используемые фильтры ради быстроты заполнения искусственно выносятся на диалог. Значения этих критериев затем тупо переписываются в query. Цитата:
а что такое 'диалоги-отдельные-окна'? |
|
![]() |
#5 |
Участник
|
Цитата:
Представим, что я тупой пользователь. Я вбиваю фильтр в эту глупую программу... И вдруг она не дает записать последний символ моего фильтра? Я как тупой пользователь ищу инструкцию, нажимаю кнопку Выбор, перевбиваю свой фильтр заново... При этом постоянно матерюсь и чертыхаюсь. Нет уж! Если давать возможность вводить, то единообразно. Как и в критериях. Цитата:
Во-первых, пользователь не может ввести нормальные критерии через звездочку (а потом удивляемся почему пользователи такие тупые) Во-вторых, значения в этих "часто используемых фильтрах" не совпадают с теми, что используются в критериях В-третьих, не запоминаются (поскольку разработчики тупо не используют xSaveLast) В-четвертых, ... В-пятых, ... ... В-мамнадцатых. Интерфейс должен быть предсказуем. А для этого он должен быть единообразным. Э-э-э... М-м-м... ![]() В общем... Черт, не ожидал я такого поворота разговора. Пример - диалог, который выскакивает при создании заказа на продажу, заказа на закупку, заказа на производство. |
|
Теги |
dialog, querybuildrange |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|