1С:Підприємство 8.3 (8.3.12.1440)
Добрый день уважаемое сообщество. Нужна помощь.Конфигурация самописная.
Делаю Отбор на форме списка.По трём реквизитам. При отборе срабатывает только 1 раз. Второй отбор уже не срабатывает.
Код
&НаСервере
Процедура ВстановитиВідбірМодель()
Если ЗначениеЗаполнено(ВідбірМодель) Тогда
//ТекЭлементОтбора = Список.Отбор.Элементы;
//ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("МодельТранспортногоЗасобу");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірМодель;
ЭлементОтбора.Использование = Истина;
ИначеЕсли ЗначениеЗаполнено(ВідбірПідрозділ) Тогда
//ТекЭлементОтбора = Список.Отбор.Элементы;
//ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Підрозділ");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірПідрозділ;
ЭлементОтбора.Использование = Истина;
ИначеЕсли ЗначениеЗаполнено(ВідбірНадходження) Тогда
//ТекЭлементОтбора = Список.Отбор.Элементы;
//ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СпосібНадходження");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірНадходження;
ЭлементОтбора.Использование = Истина;
Иначе
ТекЭлементОтбора = Список.Отбор.Элементы;
ТекЭлементОтбора.Очистить();
КонецЕсли;
КонецПроцедуры
Так же делаю и по другому реквизиту :
&НаСервере
Процедура ВстановитиВідбірНадходження()
Если ЗначениеЗаполнено(ВідбірНадходження) Тогда
ТекЭлементОтбора = Список.Отбор.Элементы;
ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СпосібНадходження");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірНадходження;
ЭлементОтбора.Использование = Истина;
ИначеЕсли ЗначениеЗаполнено(ВідбірМодель) Тогда
//ТекЭлементОтбора = Список.Отбор.Элементы;
//ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("МодельТранспортногоЗасобу");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірМодель;
ЭлементОтбора.Использование = Истина;
ИначеЕсли ЗначениеЗаполнено(ВідбірПідрозділ) Тогда
//ТекЭлементОтбора = Список.Отбор.Элементы;
//ТекЭлементОтбора.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Підрозділ");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ВідбірПідрозділ;
Иначе
ТекЭлементОтбора = Список.Отбор.Элементы;
ТекЭлементОтбора.Очистить();
КонецЕсли;
КонецПроцедуры
Короеды это не жуки. Это пользователи. Они едят кору головного мозга ...