|
отключить отбор в динамическом списке по одному параметру | ☑ | ||
---|---|---|---|---|
0
Kurbash
24.06.15
✎
08:58
|
Всем привет. На произвольной форму (УФ) есть динамический список.
При создании формы на сервере задаю отбор: &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Список.Отбор.Элементы.Очистить(); ЭлементОтбораПодразделения = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораПодразделения.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка.Подразделение"); ЭлементОтбораПодразделения.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбораПодразделения.Использование = Истина; ЭлементОтбораПодразделения.ПравоеЗначение = Параметры.Подразделение; ЭлементОтбораУчастка = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораУчастка.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка.Участок"); ЭлементОтбораУчастка.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбораУчастка.Использование = Истина; ЭлементОтбораУчастка.ПравоеЗначение = Параметры.Участок; КонецПроцедуры теперь тумкаю как удалить один из вариантов отбора по кнопке СписокНарядов.Отбор.Элементы.Удалить("Ссылка.Участок"); не канает где ошибся? |
|||
1
fisher
24.06.15
✎
09:04
|
Чего бы это оно канало? Где ты в СП увидел, что в Удалить() можно строку передавать?
|
|||
2
Kurbash
24.06.15
✎
09:07
|
да, там нужен элемент отбора компоновки данных, но как на него выйти я не догадываюсь, пробовал СПисок.Элементы.Получить() но там нужен индекс
|
|||
3
fisher
24.06.15
✎
09:08
|
А нету в этой коллекции готовых методов для поиска нужного элемента. Нужно перебирать все и определять нужный элемент отбора по искомому левому значению. Бананов нема, к сожалению...
|
|||
4
Kurbash
24.06.15
✎
09:10
|
тупо перебором?
Для Каждого стр из Список.Отбор.Элементы Цикл Если стр.тратата КонецЕсли; КонецЦикла; так? не через ..опу получится? |
|||
5
fisher
24.06.15
✎
09:10
|
Оно и понятно, в принципе, потому как неясны критерии поиска нужного элемента отбора в общем случае. Может же быть несколько элементов с одинаковым левым значением.
|
|||
6
fisher
24.06.15
✎
09:11
|
(4) Других вариантов я не вижу.
|
|||
7
fisher
24.06.15
✎
09:12
|
Можно еще запоминать ссылку на нужный элемент отбора при его создании, если бизнес-логика это допускает.
|
|||
8
Kurbash
24.06.15
✎
09:20
|
Для Каждого стр из Список.Отбор.Элементы Цикл
Если стр.ЛевоеЗначение=Новый ПолеКомпоновкиДанных("Ссылка.Участок") Тогда стр.Использование=Ложь; КонецЕсли; КонецЦикла; |
|||
9
Kurbash
24.06.15
✎
09:20
|
взлетело
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |