отбор по таблице ДанныеФормыКоллекция (табличная часть) на форме обработки средствами СКД программно

1. user785225 17 19.08.22 11:57 Сейчас в теме
👋 хотел бы выводить отбор на форме внешней обработки по ее табличной части (ДанныеФормыКоллекция; см. прикрепленный рис. ОтборДС). Состав колонок заранее не известен. Типы колонок не составные, присутствуют как простые типы (цены), так и ссылочные (номенклатура)

т.к. колонки таблицы не фиксированы (формируются программно), крайне удобно сделать и отбор программно. Вижу 3 варианта:

1) разместить ДинамическийСписок с параметром = ТЗ (ДанныеФормыКоллекция.Выгрузить(), взял отсюда) - с этим проблема, значения настроек невозможно указать на равенство, напр. нельзя установить Цена=79 (см. прикреп. рис.). В списке (79;80) - пожалуйста, но приходится выбирать тип Число
- как типизировать поле Значение отбора при исп. ДинамическийСписок по &ТЗ?

2) сформировать КомпоновщикНастроекКомпоновкиДанных программно - реализации такого программно не нашел в сети вовсе готов увеличить вознаграждение sm за готовую реализацию. Есть только инициализация Компоновщика по вручную созданному макету СКД
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ПоместитьВоВременноеХранилище(ПолучитьМакет("Макет")))) 
, но не подходит т.к. колонки таблицы на форме не постоянные

3) формировать элементы отбора, и при их изменении что-нибудь делать с таблицей. как делать понятно но это not true/ne pas comme il faut
Прикрепленные файлы:
Вознаграждение за ответ
Показать полностью
Найденные решения
5. SlavaKron 19.08.22 15:26 Сейчас в теме +5 $m
Тут: http://forum.infostart.ru/forum9/topic262485/message2655403/#message2655403 неплохое решение. Суть: сделать отбор в произвольной таблице формы (не суть ТЗ или ТЧ).
но не подходит т.к. колонки таблицы на форме не постоянные
Так инициализируйте каждый раз, когда меняется структура таблицы.
user785225; +1 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. starik-2005 3033 19.08.22 12:04 Сейчас в теме
(1)
как типизировать поле Значение отбора при исп. ДинамическийСписок по &ТЗ?
Ну у колонки есть свойство Тип, в котором описание типов. У элемента формы есть свойство ОграничениеТипа (или как-то так) - в него это описание типов засунуть.

Но в общем и целом не совсем ясно, зачем это делать. Как известная картинка про кусок хлеба и троллейбус...
3. user785225 17 19.08.22 13:46 Сейчас в теме
(2) они, к сожалению, не изменяются (ни в доступных полях, ни в фиксированных, нигде), хотя в СП кое-где написано И чтение, И запись. Забыл отметить этот момент.

зачем
- Пользователь хочет отбирать товары по вновь загруженным ценам, и только такие обрабатывать дальше. Мне кажется расхожая задача
4. ishelper 19.08.22 14:22 Сейчас в теме
(1)
2) сформировать КомпоновщикНастроекКомпоновкиДанных программно - реализации такого программно не нашел в сети
Ничего не понимаю в СКД, но немножко понимаю в поиске. Например, вот эти статьи - смотрели? Ничего не подходит?
https://infostart.ru/1c/articles/1185890/
https://infostart.ru/1c/articles/1339226/
https://infostart.ru/1c/articles/941556/
user785225; +1 Ответить
6. user785225 17 23.08.22 10:40 Сейчас в теме
(4) не подходит, т.к. везде используется уже готовый макет СКД, то есть надо заранее знать поля для отбора. А они неизвестны

разместить ДинамическийСписок с параметром = ТЗ (ДанныеФормыКоллекция.Выгрузить(), взял отсюда) - с этим проблема, значения настроек невозможно указать на равенство, напр. нельзя установить Цена=79 (см. прикреп. рис.). В списке (79;80) - пожалуйста, но приходится выбирать тип Число

- предложил пользователю такой вариант, жду обратной связи )
5. SlavaKron 19.08.22 15:26 Сейчас в теме +5 $m
Тут: http://forum.infostart.ru/forum9/topic262485/message2655403/#message2655403 неплохое решение. Суть: сделать отбор в произвольной таблице формы (не суть ТЗ или ТЧ).
но не подходит т.к. колонки таблицы на форме не постоянные
Так инициализируйте каждый раз, когда меняется структура таблицы.
user785225; +1 Ответить
8. user785225 17 23.08.22 12:58 Сейчас в теме
(5) отдал бы еще 5 см за программное формирование элемента (ТаблицаФормы) КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор
7. Dr.HiHi 3 23.08.22 11:41 Сейчас в теме
при каких-то действиях (открытие, изменения на форме) нужно сделать перестроения источника скд с указанием типов значений для полей
на форме перестроить все колонки
в итоге выйдет требуемый результат
p.s. теоретически все просто, если нету нюансов на счет "выводить определенный колонки при определенном действии"
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)