Показать сообщение отдельно
Старый 12.03.2010, 14:31   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от IKA Посмотреть сообщение
Нужно добавить на диалог поле, вкотором пользователь может указать критерий как в sysQueryForm форме. То есть , допустим," поставщик1, поставщик2" .... или ," поставщик1 .. поставщик2" и тд (чтобы выбирались в этом поле только поставщики и только на них накладывать можно было условие) Я потом если этот критерий заполнен, могу добавить нужные таблицы в запрос и наложить это условие. Если критерий не заполнен - оставить запрос неизменным.
Как такое сделать?
См. как сделано в форме со стандартными критериями SysQueryForm
Поле для критерия должно быть основано на типе Ragne.

Есть два способа реализации подобной штуки:
1. универсальный и сложный как в форме SysQueryForm. Нужно будет перехватывать методы Lookup, Validate и пр.
2. простой и понятный: создать новый тип на основе Range и добавить туда Relation, настроить внешний вид lookup-кнопок, ширину по-умолчанию и т.п.

Есть очень неприятная засада при реализации хотелки "добавить на диалог поле".
Очень легко реализовать одну сторону: пользователь вводит значение в поле, программист изменяет query.
Чертовски трудно реализовать обратную сторону: пользователь изменяет критерий в SysQueryForm, программист отображает значение в поле.

Поэтому очень многие реализовавшие эту хотелку запрещают пользователям юзать SysQueryForm. Что приводит к другим проблемам... В общем, лучше научить пользователей юзать стандартный функционал.
__________________
полезное на axForum, github, vk, coub.