Имя: Пароль:
1C
1С v8
Как реализовать произвольные отборы.
0 mzelensky
 
30.01.13
10:12
Доброго всем!
Есть Спраовчник "Контрагенты". Открываем форму списка. Нужно реализовать возможность наложения дополнительных фильтров (отбора). Проблема в том. что отборы эти весьма разноплановые:
1) Отбор на реквизит справочника
2) Отбор на табличную часть. Допустим в справочнике есть ТЧ "Виды деятельности". Я хочу вывести список контрагентов у которых есть вид деятельности "Экспедитор". + В справочнике имеется несколько табличных частей и необходимо иметь возможность наложить отбор на ЛЮБУЮ из них.
3) Самое интересно - наложить отбор на АДРЕС. Например мне нужны контры, в фактическом адресе которых: "Страна=Россия" и "город=Ростов"


Вот как это все реализовать лучше?!?!?! Отборы крайне не однородные. Критерии отбора тут отпадают. Получается нужно "оручками делать". Встает сразу 2 вопроса:
1) Как сделать удобный для пользователя элемент управления отборами
2) Как потом его обрабатывать?!
1 andreymongol82
 
30.01.13
10:18
Забыли указать - это УФ или нет?
2 mzelensky
 
30.01.13
10:33
(1) ДА, забыл.

Платформа 8.2.16.362
Режим работы - Обычные Формы в толстом клиенте.
3 Fragster
 
гуру
30.01.13
10:37
в демоническом списке можно. только адрес надо будет характеристикой забабахать
4 andreymongol82
 
30.01.13
10:40
(3) Можно заморочиться, чтобы из контактной информации регистра сведений дергались соответствующий вид КИ и поля по этому виду
5 mzelensky
 
30.01.13
10:40
(3) Давай без "демонов"!
6 mzelensky
 
30.01.13
10:40
(4) это понятно ,что можно!

Как правильно\корректно пользователю "менюшку-управлялку" сделать?!
7 Fragster
 
гуру
30.01.13
10:41
в (4) вопрос или где?
8 mikecool
 
30.01.13
10:41
(5) формируешь список ссылок по нужным критериям, накладываешь его отбором на поле Ссылка
9 Fragster
 
гуру
30.01.13
10:42
(8) это меееееееедленно
10 andreymongol82
 
30.01.13
10:42
(7) Предложение
11 Всеяд
 
30.01.13
10:42
Если у тебя всё по-старинке и ты не брезгуешь отборами по ссылке - то можно инициализировать свой построитель отчёта/запроса при открытии формы, в запросе которого будут получаться ссылки, которые потом установятся в отбор списка. А для пользователя выведешь табличное поле отбора этого построителя. Со всеми модными отборами.
12 andreymongol82
 
30.01.13
10:43
(11) По-моему это и предложили в (3)
13 mikecool
 
30.01.13
10:44
(9) да, но иногда проще так, нежели перелопатить форму, или разбираться с УФ
14 mzelensky
 
30.01.13
10:44
(11) через построиель очень тяжело грамотно отработать несколько табличных частей + инфу из контактной информации (отдельный РС)
15 Всеяд
 
30.01.13
10:47
(14) Ну, тебе для отборов так или иначе придётся их грамотно отработать :)
16 Fragster
 
гуру
30.01.13
10:47
(12) нет
17 mzelensky
 
30.01.13
10:53
(15) а на выходе получаем список контров (ссылки) и потом через стандартный отбор ограничиваем?!
18 Всеяд
 
30.01.13
11:15
(17) Да, хоть это и не красиво. Можно хитро выделить для себя в построителе отборы через точку от ссылки, чтобы их накладывать штатно, а через отбор по ссылке получать только "глубинные" отборы.
19 mzelensky
 
30.01.13
11:29
(18) Отбор на реквизиты и ТЧ сделал - норм работает!
Теперь нужно с адресами что-то придумать
20 Всеяд
 
30.01.13
12:02
Попробуй создать внутреннее соединение к адресам, пометь как необязательное, выбери поле из него только в отбор построителя.

У меня руки так и не дошли до необязательных соединений, тут я теоретизирую только. Практики могут подсказать точнее, думаю.
21 mzelensky
 
30.01.13
12:30
Вроде адреса тоже отработали. ток вот косяк - чисто эстетический.

Когда нажимаешь добавить поле (в таблицу отборов), то выходит стандартная менюшка построителя с полями на которые можно накладывать условия. Так вот эти поля упорядочива.тся по имени.

И у меня получается:
Город
Контрагент (тут с плюсиком на вложенные поля)
Регион
Страна
...

Т.е. не совсем красиво. А возможности сгруппировать или хотя бы упорядочить эти поля я не вижу. Как можно решить?!
22 mzelensky
 
30.01.13
12:47
ап ну чуток
23 Fragster
 
гуру
30.01.13
12:48
(22) кури (3)
24 mzelensky
 
30.01.13
13:03
(23) я же тебе говорю - нет у меня "демонов" и обзоводиться ими я не хочу!
25 Всеяд
 
30.01.13
17:01
(21) Ну, представления полей отбора ты можешь задавать сам в тексте запроса построителя. Да и порядком, по-моему, в коллекции отборов можно рулить, если я уже не опух от СКД.