Коллеги, добрый день! Прошу помочь решить вопрос. Есть необходимость открывать отчет из общей команды с заданным периодом. Подскажите как передать значение периода в отчет?
Пробовал так не получается, отбор работает период нет.
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Менеджер = ПолучитьСотрудника();
Период = Новый СтандартныйПериод;
Период.ДатаНачала = НачалоНедели(ТекущаяДата());
Период.ДатаОкончания = КонецНедели(ТекущаяДата());
ПараметрыФормы = Новый Структура("Период",Период);
ПараметрыОтбор = Новый Структура("Менеджер",Менеджер);
СтруктураФорма = Новый Структура("Отбор",ПараметрыОтбор);
СтруктураФорма.Вставить("СформироватьПриОткрытии",Истина);
СтруктураФорма.Вставить("КлючВарианта","ЗаНеделю");
СтруктураФорма.Вставить("Параметры",ПараметрыФормы);
ОткрытьФорму("Отчет.РеестрЗаявокПоДатеЗагрузки.Форма",СтруктураФорма,);
ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка);
КонецПроцедуры
(3) у меня похожая задача тоже проблема была передать. Вот код:
&НаСервере
Процедура ПриОткрытииНаСервере()
ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
Макет = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Если НЕ РольДоступна("ПолныеПрава") Тогда
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| СотрудникиПользователя.Сотрудник КАК Сотрудник,
| СотрудникиПользователя.Пользователь КАК Пользователь
|ИЗ
| РегистрСведений.СотрудникиПользователя КАК СотрудникиПользователя
|ГДЕ
| СотрудникиПользователя.Пользователь.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Пользователи.ТекущийПользователь());
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Если Выборка.Следующий() Тогда
Сотрудник = Выборка.Сотрудник;
КонецЕсли;
Настройки = ОтчетОбъект.КомпоновщикНастроек.ПолучитьНастройки();
Вариант = ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек.СводныйОтчетПоПродажам;
Для Каждого Элемент ИЗ Вариант.Настройки.Отбор.Элементы Цикл
Если Строка(Элемент.ЛевоеЗначение) = "Контрагент.Ответственный" Тогда
Элемент.Использование = Истина;
Элемент.ПравоеЗначение = Сотрудник;
Иначе
Элемент.Использование = Ложь;
КонецЕсли;
КонецЦикла;
ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(Вариант.Настройки);
Иначе
//Вариант = ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек.СводныйОтчетПоПродажам1;
ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(Вариант.Настройки);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Для Каждого Элемент ИЗ ЭтаФорма.Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл
Если Строка(Элемент.Параметр) = "Период1" Тогда
Элемент.Значение.ДатаНачала = Дата('20200101000000');
Элемент.Значение.ДатаОкончания = ДобавитьМесяц(ТекущаяДата(),-12);
ИначеЕсли Строка(Элемент.Параметр) = "Период2" Тогда
Элемент.Значение.ДатаНачала = Дата('20210101000000');
Элемент.Значение.ДатаОкончания = ТекущаяДата();
Прервать;
КонецЕсли;
КонецЦикла;
ПриОткрытииНаСервере();
КонецПроцедуры