![]() |
![]() |
![]() |
|
Как можно сформировать отчет скд с параметрами текущего документа? | ☑ | ||
---|---|---|---|---|
0
kenzori
03.06.25
✎
11:46
|
При формировании отчета нужно передать параметры текущего документа во внешний отчет на скд, и на основе этих параметров должен формироваться отчет, как это можно реализовать, пробую параметры формы передавать и форму открывать, но параметры не заполняются
&НаКлиенте Процедура СформироватьОтчет(Команда) Если Не СсылкаНаОбработку() Тогда Возврат; КонецЕсли; ПараметрыФормы = Новый Структура(); ПараметрыФормы.Вставить("Ссылка", Объект.Ссылка); ПараметрыФормы.Вставить("ДатаС", Период); ПараметрыФормы.Вставить("ДатаПо", Период); ПараметрыФормы.Вставить("Организация", Объект.Организация); ПараметрыФормы.Вставить("Подразделение", Объект.Подразделение); КлючВарианта = ПолучитьКлючВариантаОтчета(); Если КлючВарианта <> Неопределено Тогда ПараметрыФормы.Вставить("КлючВарианта", КлючВарианта); КонецЕсли; ОткрытьФорму("ВнешнийОтчет.ОтчетОРаспределенииИспользованныхДиафрагмНаВыпускВП.Форма", ПараметрыФормы); КонецПроцедуры &НаСервере Функция ПолучитьКлючВариантаОтчета() СписокВариантов = ХранилищеВариантовОтчетов.ПолучитьСписок("ВнешнийОтчет.ОтчетОРаспределенииИспользованныхДиафрагмНаВыпускВП"); Если СписокВариантов.Количество() = 0 Тогда Возврат Неопределено; КонецЕсли; Возврат СписокВариантов[0].Значение; КонецФункции &НаСервере Функция СсылкаНаОбработку() ОтчетСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Отчет о распределении использованных диафрагм на выпуск ВП"); Если ОтчетСсылка.Пустая() Тогда Сообщить("Не удалось найти отчет 'Отчет о распределении использованных диафрагм на выпуск ВП'"); Возврат Ложь; КонецЕсли; ДвоичныеДанные = ОтчетСсылка.ХранилищеОбработки.Получить(); АдресХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанные); ВнешниеОтчеты.Подключить(АдресХранилища, "ОтчетОРаспределенииИспользованныхДиафрагмНаВыпускВП"); Возврат Истина; КонецФункции |
|||
1
mikecool
03.06.25
✎
11:47
|
в ПриКомпоновкеРезультата()
|
|||
2
Волшебник
03.06.25
✎
11:49
|
ПараметрыФормы.Вставить("ДатаС", Период); ПараметрыФормы.Вставить("ДатаПо", Период); Здесь одно и то же с точностью до секунды? |
|||
3
kenzori
03.06.25
✎
11:51
|
(1) создал реквизиты в отчете и параметры устанавливаю или как-то подругому надо?
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) Настройки = КомпоновщикНастроек.ПолучитьНастройки(); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Ссылка", Ссылка); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ДатаС", ДатаС); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Организация", Организация); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Подразделение", Подразделение); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); КонецПроцедуры |
|||
4
kenzori
03.06.25
✎
11:51
|
(2) Мне бы хотя-бы чтоб что-то одно передавалось, но оно не передается
|
|||
5
Мультук
гуру
03.06.25
✎
12:01
|
(4)
1) Передаётся, вы просто не там ловите google: 1С Форма Открыть Передать параметры https://infostart.ru/1c/articles/86853/ "Как передаются параметры в управляемых формах" 2) google: 1с открыть отчет с параметрами https://fastcode.im/Templates/7996/otkryt-otchet-skd-s-peredachej-parametrov-i-otborami Не смотрел по ссылке, наверное работает (с) 3) Смотрим в типовые. Там тоже куча решений |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |