Расшифровка данных одного отчета другим отчетом без создания формы отчета. Управляемые формы

16.11.23

Разработка - Работа с интерфейсом

Доработка создает в контекстном меню расшифровки пункт «Расшифровать другим отчетом». Есть возможность расшифровать данные несколькими отчетами. По сути, это добавление вашего отчета в штатный механизм расшифровки другим отчетом.

Итак, расшифруем внешний отчет «МойОтчет» отчетом «Остатки и доступность».

Найдем общий модуль ОтчетыУТКлиентПереопределяемый и в нем процедуру ОбработкаРасшифровки. Расширяем ее с типом вызова «Вместо» или «Вместо с контролем». Если кто не пользуется расширениями, штош, снимайте модуль с поддержки и бесчинствуйте прямо в нем. В общем, не зависимо от того, расширяем мы модуль или нет, находим в процедуре ветвление в зависимости от имени отчета. Мне привычней добавлять код в конце и перед КонецЕсли я вношу свои коррективы:

ИначеЕсли ПолноеИмяОтчета = "ВнешнийОтчет.МойОтчет" Тогда
		
	СтруктураРасшифровки = ОтчетыУТВызовСервераПереопределяемый.СформироватьДанныеРасшифровки_МойОтчет(Расшифровка, ЭтаФорма.ОтчетДанныеРасшифровки);
		
	//Остатки и доступность
	ПараметрыОтчета = Новый Структура;
	ПараметрыОтчета.Вставить("Имя",              "Остатки");
	ПараметрыОтчета.Вставить("Заголовок",        НСтр("ru = 'Остатки и доступность товаров'"));
	ПараметрыОтчета.Вставить("ИмяОтчета",        "Отчет.ОстаткиИДоступностьТоваров");

    //Параметры для открываемого отчета	
	ПоляРасшифровки  = Новый Массив;
	ПоляРасшифровки.Добавить("Номенклатура");
	ПараметрыОтчета.Вставить("ПоляРасшифровки", ПоляРасшифровки);
		
	СписокПараметров = Новый Массив;
	СписокПараметров.Добавить("ДанныеОтчета");
	ПараметрыОтчета.Вставить("СписокПараметров", СписокПараметров);
		
	МенюОтчетов.Добавить(ПараметрыОтчета);

Основными параметрами здесь являются структура СтруктураРасшифровки и массив ПоляРасшифровки, который потом идет в структуру  СписокПараметров и далее в ПараметрыОтчета. ПоляРасшифровки это отборы для открывающегося отчета. Значения для отборов находятся в СтруктураРасшифровки. Как видно из кода, структура заполняется из моей  функции  СформироватьДанныеРасшифровки_МойОтчет. Для этого я расширил модуль ОтчетыУТВызовСервераПереопределяемый (Ну а вы, как и ранее, поступайте как знаете) и создал там свою функцию:

Функция СформироватьДанныеРасшифровки_МойОтчет(Расшифровка, АдресХранилища) Экспорт
	
	ДанныеРасшифровки = ПолучитьИзВременногоХранилища(АдресХранилища); // ДанныеРасшифровкиКомпоновкиДанных -
	СтруктураРасшифровки = Новый Структура;	
	ПолучитьЗначенияПолей(СтруктураРасшифровки, ДанныеРасшифровки.Элементы, Расшифровка);
	
	Возврат СтруктураРасшифровки;
	
КонецФункции

Естественно, если в СтруктураРасшифровки не будет данных с ключом, как в ПоляРасшифровки, то отборы открываемого отчета не заполнятся.

Вот, собственно, и всё. При двойном клике на строке отчета появится пункт «Расшифровать другим отчетом» --> Название отчета. Возможно сделать расшифровку несколькими отчетами.

 

 

Решение проверено на платформе 8.3.22.2106, ERP 2.5.12.132. Учитывая названия изменяемых модулей, скорей всего этот метод будет работать и в УТ 11.

Доклад окончен.

Расшифровка Расшифровка другим отчетом Управляемые формы Отчеты

См. также

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    17087    23    4    

37

Новогоднее оформление для 1С

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    11529    769    elcoan    46    

107

Конструктор HTML, CSS и javascript

Инструментарий разработчика Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

2 стартмани

10.04.2023    10110    156    acces969    31    

119

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    4111    kalyaka    4    

31

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12476    1    6    

11

Условное оформление элементов форм в пользовательском режиме 1С (управление видимостью и доступностью элементов форм)

Работа с интерфейсом Платформа 1С v8.3 Платные (руб)

Подсистема условного оформления элементов форм (далее подсистема) предназначена для настройки оформления элементов форм (видимость, доступность, цвет фона, цвет текста и прочее) в пользовательском режиме 1С. Также подсистему возможно использовать для ограничения доступа к реквизитам формы для определенных пользователей (или групп пользователей).

6000 руб.

18.01.2022    9057    1    2    

6

Программный интерфейс для доработки форм

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Реализовал простой способ программного создания новых элементов, команд и реквизитов на форме.

25.11.2021    9884    AtamanovYS    19    

139
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. starik-2005 3046 16.11.23 18:15 Сейчас в теме
Отлично!
Agnivech; leosoft; umah; +3 Ответить
4. triviumfan 94 18.11.23 15:11 Сейчас в теме
(1) Сарказм? Таких тем пруд пруди)
5. starik-2005 3046 19.11.23 19:39 Сейчас в теме
(4) Скинь парочку. Как-то заморачивался данной темой, в инете нихрена не нашел приличного, а что нашел - слезки. И да, сделал пару велосипедов и даже статью начал писать с такой вот картинкой:
Прикрепленные файлы:
8. starik-2005 3046 26.11.23 22:42 Сейчас в теме
(7) Даже не знаю, которую сцылку с которой картинкой соотнести...
Agnivech; +1 Ответить
2. Xershi 1490 17.11.23 18:13 Сейчас в теме
Отличная статья, поправьте в Ворде опечатки+))
3. umah 47 17.11.23 20:12 Сейчас в теме
(2) В следующий раз буду внимательней
6. umah 47 22.11.23 13:20 Сейчас в теме
UPD: За отборы в создаваемом отчете отвечает не ПоляРасшифровки, а СписокПараметров. В моем примере вместо
СписокПараметров.Добавить("ДанныеОтчета");

должно быть:
СписокПараметров.Добавить("Номенклатура");

При тестировании доработки так совпало, что указанный ранее вариант давал требуемый результат.
Оставьте свое сообщение