Как найти и удалить определенный отбор в динамическом списке
1.
Гость
15.03.21 14:31
Есть два отбора в динамическом списке. Один постоянный, другой должен выключаться и включать в определенных условиях. Как найти нужный отбор и как его очистить, не трогая второй?
Сам отбор:
Его надо отключать и включать когда это нужно.
Сам отбор:
Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Код");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = "01";
Его надо отключать и включать когда это нужно.
По теме из базы знаний
- Полнотекстовый поиск в 1С. №1 Грабли в динамических списках
- Как сдать экзамен 1С:Специалист по платформе?
- WEB-интерфейсы как механизм сбора и контроля данных в розничной сети. Инструменты и наработки
- Динамическая кнопка VS Комбинация клавиш
- Расширение: Быстрые отборы через буфер [Alt+C] Копировать список, [Alt+V] Вставить список, [Ctrl+C] Копировать из файлов
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
что то типа такого надо
Для Каждого ЭлементОтбора Из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
Если ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Имя) Тогда
КомпоновщикНастроек.Настройки.Отбор.Элементы.Удалить(ЭлементОтбора);
КонецЕсли;
КонецЦикла;
Это решение
или оставляем отбор, но не используем
ЭлементОтбора = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Имя);
ЭлементОтбора.ВидСравнения = ВидСравнения;
ЭлементОтбора.ПравоеЗначение = Значение;
ЭлементОтбора.Использование = Ложь;
Это решение
(7) Нет штатной функции получения элемента отбора, условного оформления и т.п. в СКД. Перебор наше всё
Для Каждого ЭлементОтбора Из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
Если ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Имя) И ЭлементОтбора.ВидСравнения = ВидСравнения Тогда
КомпоновщикНастроек.Настройки.Отбор.Элементы.Удалить(ЭлементОтбора);
КонецЕсли;
КонецЦикла;
Это решение
При программной установке отбора можно заполнить Представление, по которому потом можно будет легко найти нужный элемент отбора.
Если конфигурация на БСП, то можно посмотреть в сторону модуля ОбщегоНазначенияКлиентСервер, в котором есть несколько функций по работе с отбором динамического списка, т.е. с КоллекцияЭлементовОтбораКомпоновкиДанных.
ДобавитьЭлементКомпоновки(), ИзменитьЭлементыОтбора(), УстановитьЭлементОтбора() и т.д.
Если конфигурация на БСП, то можно посмотреть в сторону модуля ОбщегоНазначенияКлиентСервер, в котором есть несколько функций по работе с отбором динамического списка, т.е. с КоллекцияЭлементовОтбораКомпоновкиДанных.
ДобавитьЭлементКомпоновки(), ИзменитьЭлементыОтбора(), УстановитьЭлементОтбора() и т.д.
Это решение
ОбщегоНазначенияКлиентСервер. УдалитьЭлементыГруппыОтбораДинамическогоСписка ()
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка()
Это решение
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот