Расшифровка поля другим отчетом СКД обычные формы
По теме из базы знаний
- Кнопки управления группировками табличного документа для управляемых форм
- Повторный запуск отчета с другим вариантом настроек
- Универсальный конструктор отчетов СКД (управляемые формы, тонкий клиент)
- По-настоящему свои макеты в отчетах СКД. Исследование процесса компоновки и генерация кода отчета
- Отчеты с общей формой отчета. Типовые сценарии
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Добрый день!
Стандартно, выполняется из применения другой группировки по запросу. Запрос, при этом , нет необходимости делать отдельно.
Сначала получаете данные по выборке первой группировки, потом по выборке другой группировки
Стандартно, выполняется из применения другой группировки по запросу. Запрос, при этом , нет необходимости делать отдельно.
Сначала получаете данные по выборке первой группировки, потом по выборке другой группировки
[1C-CODE]
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
Поле = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0];
ТипРасшифровки = Поле.Поле;
Если ТипРасшифровки = "Вагон" Тогда
//ОчиститьСообщения();
СтандартнаяОбработка = Ложь;
СтруктураРасшифровки = Новый Структура;
//Значения всех вышестоящих группировок
//ВывестиЗначениеГруппировки(Расшифровка, СтруктураРасшифровки);
ФормаРасшифровки = ПолучитьФорму("ФормаРасшифровки");
ФормаРасшифровки.Открыть();
ФормаРасшифровки.СформироватьОтчетРасшифровки("СхемаКомпоновкиДанныхРасшифровки",
СтруктураРасшифровки,
"Расшифровка ячейки """ + ТипРасшифровки + """");
ИначеЕсли ТипРасшифровки = "Справочник" Тогда
СтандартнаяОбработка = Ложь;
ОткрытьЗначение(Поле.Значение);
КонецЕсли;
КонецПроцедуры
ПоказатьПо немногу начал разбираться.
В форме расшифровке функция :
Процедура СформироватьОтчетРасшифровки(ИмяМакета, СтруктураРасшифровки, Заголовок = "Расшифровка ячейки") Экспорт
Результат = ЭлементыФормы.Результат;
Результат.Очистить();
РасшифровкаСхемаКомпоновкиДанных = ПолучитьМакет(ИмяМакета);
//Отборы
Для Каждого Значение ИЗ СтруктураРасшифровки Цикл
ДобавитьЗначениеОтбораРасшифровки(Значение.Ключ, Значение.Значение, , ВидСравненияКомпоновкиДанных.ВИерархии);
КонецЦикла;
//Параметры
ДобавитьЗначениеПараметраРасшифровки("НачалоПериода",НачалоДня(НачалоПериода));
ДобавитьЗначениеПараметраРасшифровки("КонецПериода",КонецДня(КонецПериода));
//Заголовок
ДобавитьЗначениеПараметраВыводаРасшифровки("Заголовок",Заголовок);
//Получаем оформление из макета
МакетОформленияКомпоновкиДанных = ПолучитьМакет("МакетОформленияКомпоновкиДанныхПесок");
РасшифровкаДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
РасшифровкаНастройки = РасшифровкаСхемаКомпоновкиДанных.НастройкиПоУмолчанию;
РасшифровкаКомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
РасшифровкаМакетКомпоновки = РасшифровкаКомпоновщикМакета.Выполнить(РасшифровкаСхемаКомпоновкиДанных, РасшифровкаНастройки, РасшифровкаДанныеРасшифровки, МакетОформленияКомпоновкиДанных);
РасшифровкаПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
РасшифровкаПроцессорКомпоновкиДанных.Инициализировать(РасшифровкаМакетКомпоновки, , РасшифровкаДанныеРасшифровки);
РасшифровкаПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
РасшифровкаПроцессорВывода.УстановитьДокумент(Результат);
РасшифровкаПроцессорВывода.Вывести(РасшифровкаПроцессорКомпоновкиДанных);
Результат.Защита = Истина;
КонецПроцедуры
Показать//***********************************************************************
Процедура ДобавитьЗначениеПараметраРасшифровки(Параметр, Значение)
Для Каждого ЭлементПараметр из РасшифровкаСхемаКомпоновкиДанных.Параметры Цикл
Если ЭлементПараметр.Имя = Параметр Тогда
ЭлементПараметр.Значение = Значение;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
//***********************************************************************
Показать{ВнешнийОтчет.РасширенныйОтчетПоАналитикеМассомеров.Форма.ФормаРасшифровки.Форма(131)}: Ошибка при вызове метода контекста (Вывести)
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
по причине:
Ошибка вывода результата
по причине:
Ошибка при выводе результата
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
{(15, 38)}: Не задано значение параметра "НАчПериода"
ЖДНакладнаяВагоны.Ссылка.Дата МЕЖДУ <<?>>&НАчПериода И &КонПериода
ПоказатьПРи выводе не выдит параметры дат
Результат = ЭлементыФормы.Результат;
Результат.Очистить();
РасшифровкаСхемаКомпоновкиДанных = ПолучитьМакет(ИмяМакета);
//Отборы
Для Каждого Значение ИЗ СтруктураРасшифровки Цикл
ДобавитьЗначениеОтбораРасшифровки(Значение.Ключ, Значение.Значение, , ВидСравненияКомпоновкиДанных.ВИерархии);
КонецЦикла;
//Параметры
ДобавитьЗначениеПараметраРасшифровки("НачалоПериода",НачалоДня(НачалоПериода));
ДобавитьЗначениеПараметраРасшифровки("КонецПериода",КонецДня(КонецПериода));
//Заголовок
ДобавитьЗначениеПараметраВыводаРасшифровки("Заголовок",Заголовок);
//Получаем оформление из макета
МакетОформленияКомпоновкиДанных = ПолучитьМакет("МакетОформленияКомпоновкиДанныхПесок");
РасшифровкаДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
РасшифровкаНастройки = РасшифровкаСхемаКомпоновкиДанных.НастройкиПоУмолчанию;
РасшифровкаКомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
РасшифровкаМакетКомпоновки = РасшифровкаКомпоновщикМакета.Выполнить(РасшифровкаСхемаКомпоновкиДанных, РасшифровкаНастройки, РасшифровкаДанныеРасшифровки, МакетОформленияКомпоновкиДанных);
РасшифровкаПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
РасшифровкаПроцессорКомпоновкиДанных.Инициализировать(РасшифровкаМакетКомпоновки, , РасшифровкаДанныеРасшифровки);
РасшифровкаПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
РасшифровкаПроцессорВывода.УстановитьДокумент(Результат);
РасшифровкаПроцессорВывода.Вывести(РасшифровкаПроцессорКомпоновкиДанных);
Результат.Защита = Истина;
ПоказатьВызываю код.
При формировании ошибка
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
{(15, 55)}: Не задано значение параметра "КонецПериода"
ЖДНакладнаяВагоны.Ссылка.Дата МЕЖДУ &НачалоПериода И <<?>>&КонецПериода
ПоказатьЗАполняю параметры.
ДобавитьЗначениеПараметраРасшифровки("НачалоПериода",НачалоДня(НачалоПериода));
ДобавитьЗначениеПараметраРасшифровки("КонецПериода",КонецДня(КонецПериода));
Что Я делаю не так?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот