0
gsdgdgds
05.04.16
✎
15:31
|
Не заполняет значение отбора. Подскажите в чем косяк. Вот Код:
УстановитьПользовательскийОтбор(Отчет, "Код", Код);
//Если ТоварЭтоГруппа() Тогда
//УстановитьПользовательскийОтбор(Отчет, "Номенклатура", Товар, Ложь, "ВИерархии");
//Иначе
//УстановитьПользовательскийОтбор(Отчет, "Номенклатура", Товар);
//КонецЕсли;
Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("флВклВзв"));
Параметр = ЭтаФорма.Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
Параметр.Значение = флВклВзв;
Параметр.Использование = Истина;
ВариантМодифицирован = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьПользовательскийОтбор(Отчет, ИмяОтбора, Значение, ЭтоПараметр = Ложь, ВидСравнения = "", ИспользоватьНезаполненное = Ложь, РежимОтображения = "") Экспорт
Если ЭтоПараметр Тогда
УстановитьПользовательскийОтборДляПараметра(Отчет, ИмяОтбора, Значение)
Иначе
Если ТипЗнч(Отчет) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда
КомпоновщикНастроек = Отчет;
Иначе
КомпоновщикНастроек = Отчет.КомпоновщикНастроек;
КонецЕсли;
ПКД_отбора = Новый ПолеКомпоновкиДанных(ИмяОтбора);
Для каждого ЭлОтбора Из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
Если ЭлОтбора.ЛевоеЗначение = ПКД_отбора Тогда
ОтборИД = ЭлОтбора.ИдентификаторПользовательскойНастройки;
Прервать;
КонецЕсли;
КонецЦикла;
Отбор = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(ОтборИД);
Если ТипЗнч(Отбор) <> Тип("ЭлементОтбораКомпоновкиДанных") Тогда
Возврат;
КонецЕсли;
Если ЗначениеЗаполнено(ВидСравнения) Тогда
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных[ВидСравнения];
Иначе
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
КонецЕсли;
Отбор.ПравоеЗначение = Значение;
Отбор.Использование = ЗначениеЗаполнено(Значение) ИЛИ ИспользоватьНезаполненное;
Если ЗначениеЗаполнено(РежимОтображения) Тогда
Отбор.РежимОтображения=РежимОтображенияЭлементаНастройкиКомпоновкиДанных[РежимОтображения];
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьПользовательскийОтборДляПараметра(Отчет, ИмяПараметра, Значение) Экспорт
Если ТипЗнч(Отчет) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда
КомпоновщикНастроек = Отчет;
Иначе
КомпоновщикНастроек = Отчет.КомпоновщикНастроек;
КонецЕсли;
Параметр = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных(ИмяПараметра));
ИДОтбораВНастройках = Параметр.ИдентификаторПользовательскойНастройки;
ОтборВНастройках = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(ИДОтбораВНастройках);
ОтборВНастройках.Значение = Значение;
ОтборВНастройках.Использование = Истина;
КонецПроцедуры
|
|