Как программно передать параметры в СКД 1С
Если вы используете конфигурацию 1С:Бухгалтерия 2.0, то можно воспользоваться процедурой из модуля ТиповыеОтчеты.
Пример:
ТиповыеОтчеты.УстановитьПараметр(КомпоновщикНастроек, "НачалоПериода", НачалоДня(ДатаНачала));
Выглядит она так:
// Устанавливает параметр данных компоновщика настроек
Функция УстановитьПараметр(КомпоновщикНастроекКоллекцияЗначений, ИмяПараметра, Значение, Использование = Истина) Экспорт
Если ТипЗнч(КомпоновщикНастроекКоллекцияЗначений) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда
ЗначениеПараметра = КомпоновщикНастроекКоллекцияЗначений.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных(ИмяПараметра));
ИначеЕсли ТипЗнч(КомпоновщикНастроекКоллекцияЗначений) = Тип("КоллекцияЗначенийПараметровКомпоновкиДанных") Тогда
ЗначениеПараметра = КомпоновщикНастроекКоллекцияЗначений.Найти(ИмяПараметра);
ИначеЕсли ТипЗнч(КомпоновщикНастроекКоллекцияЗначений) = Тип("ОформлениеКомпоновкиДанных") Тогда
ЗначениеПараметра = КомпоновщикНастроекКоллекцияЗначений.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных(ИмяПараметра));
КонецЕсли;
Если ЗначениеПараметра = Неопределено Тогда
Возврат Неопределено;
Иначе
ЗначениеПараметра.Использование = Использование;
ЗначениеПараметра.Значение = Значение;
Возврат ЗначениеПараметра;
КонецЕсли;
КонецФункции
При необходимости можно скопировать ее в свой модуль.
Передавать параметры в систему компоновки данных можно, например, в процедуре формирования отчета:
Процедура СформироватьОтчет(Результат = Неопределено, ДанныеРасшифровки = Неопределено, ВыводВФормуОтчета = Истина, ВнешниеНаборыДанных = Неопределено) Экспорт
Результат.Очистить();
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
ТиповыеОтчеты.УстановитьПараметр(КомпоновщикНастроек, "НачалоПериода", НачалоДня(ДатаНачала));
ТиповыеОтчеты.УстановитьПараметр(КомпоновщикНастроек, "КонецПериода", КонецДня(ДатаОкончания));
СтандартныеОтчеты.ВывестиОтчет(ЭтотОбъект, Результат, ДанныеРасшифровки, ВыводВФормуОтчета, ВнешниеНаборыДанных, Истина);
КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
Результат.ОтображатьЗаголовки = Истина;
// Выполним дополнительную обработку Результата отчета
СтандартныеОтчеты.ОбработкаРезультатаОтчета(ЭтотОбъект, Результат);
КонецПроцедуры