Всем привет друзья. Сталкнулся с проблемой и не могу понять как сделать правильно.
Предприятие 1С:Предприятие 8.3 (8.3.16.1063). Конфигурация самописная с нуля
Задача:
Сделать расшифровку поля другим отчетом, запрос такой же лишь Меняются параметры. Пользуясь гуглом и собирая код из разных частей сделал так
Приведу код ниже.
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
Поле = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0];
ТипРасшифровки = Поле.Поле;
Если ТипРасшифровки = "Вагон" Тогда
//ОчиститьСообщения();
СтандартнаяОбработка = Ложь;
СтруктураРасшифровки = Новый Структура;
//Значения всех вышестоящих группировок
ВывестиЗначениеГруппировки(Расшифровка, СтруктураРасшифровки);
ФормаРасшифровки = ПолучитьФорму("ФормаРасшифровки");
ФормаРасшифровки.Открыть();
ФормаРасшифровки.СформироватьОтчетРасшифровки("СхемаКомпоновкиДанныхРасшифровки",
СтруктураРасшифровки,
"Расшифровка ячейки """ + ТипРасшифровки + """");
ИначеЕсли ТипРасшифровки = "Справочник" Тогда
СтандартнаяОбработка = Ложь;
ОткрытьЗначение(Поле.Значение);
КонецЕсли;
Процедура СформироватьОтчетРасшифровки(ИмяМакета, СтруктураРасшифровки, Заголовок = "Расшифровка ячейки") Экспорт
Результат = ЭлементыФормы.Результат;
Результат.Очистить();
РасшифровкаСхемаКомпоновкиДанных = ПолучитьМакет(ИмяМакета);
//Отборы
Для Каждого Значение ИЗ СтруктураРасшифровки Цикл
ДобавитьЗначениеОтбораРасшифровки(Значение.Ключ, Значение.Значение, , ВидСравненияКомпоновкиДанных.ВИерархии);
КонецЦикла;
//Параметры
ДобавитьЗначениеПараметраРасшифровки("НачалоПериода",НачалоДня(НачалоПериода));
ДобавитьЗначениеПараметраРасшифровки("КонецПериода",КонецДня(КонецПериода));
//Заголовок
ДобавитьЗначениеПараметраВыводаРасшифровки("Заголовок",Заголовок);
//Получаем оформление из макета
МакетОформленияКомпоновкиДанных = ПолучитьМакет("МакетОформленияКомпоновкиДанныхПесок");
РасшифровкаДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
РасшифровкаНастройки = РасшифровкаСхемаКомпоновкиДанных.НастройкиПоУмолчанию;
РасшифровкаКомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
РасшифровкаМакетКомпоновки = РасшифровкаКомпоновщикМакета.Выполнить(РасшифровкаСхемаКомпоновкиДанных, РасшифровкаНастройки, РасшифровкаДанныеРасшифровки, МакетОформленияКомпоновкиДанных);
РасшифровкаПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
РасшифровкаПроцессорКомпоновкиДанных.Инициализировать(РасшифровкаМакетКомпоновки, , РасшифровкаДанныеРасшифровки);
РасшифровкаПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
РасшифровкаПроцессорВывода.УстановитьДокумент(Результат);
РасшифровкаПроцессорВывода.Вывести(РасшифровкаПроцессорКомпоновкиДанных);
Результат.Защита = Истина;
КонецПроцедуры
Надо https://pro1c.org.ua/topic/programmno-ustanovit-znachenie-parametra-skd-v-otchete-40252/.
Vofka @ Сегодня, 8:31
,
Интересно конечно. Но Суть в том что Мне надо с одной формы взять вагон + даты и передать в другую ну а там запустить отчет.
Посмотрел ещё код, который вы показали. Параметры у вас похоже заполняются:
//Параметры
ДобавитьЗначениеПараметраРасшифровки("НачалоПериода",НачалоДня(НачалоПериода));
ДобавитьЗначениеПараметраРасшифровки("КонецПериода",КонецДня(КонецПериода));
Vofka @ Вчера, 10:00
,
Реквизиты на форме ну и параметры в запросе также завутся
sava1 @ 12.06.20, 12:29
,
1)в модуле формы расшифровке отчета.
https://pro1c.org.ua/redirect.php?https://drive.google.com/file/d/1L7VZ72oncB2T_1GRdgduTYbHQmyBB2VY/view?usp=sharing
Процедура ДобавитьЗначениеПараметраРасшифровки(Параметр, Значение)
Для Каждого ЭлементПараметр из РасшифровкаСхемаКомпоновкиДанных.Параметры Цикл
Если ЭлементПараметр.Имя = Параметр Тогда
ЭлементПараметр.Значение = Значение;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
sava1 @ Сегодня, 7:47
,
Используется ниже
РасшифровкаМакетКомпоновки = РасшифровкаКомпоновщикМакета.Выполнить(РасшифровкаСхемаКомпоновкиДанных, РасшифровкаНастройки, РасшифровкаДанныеРасшифровки, МакетОформленияКомпоновкиДанных);
тогда параметры заполняйте в РасшифровкаНастройки
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua