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

16.11.23

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

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

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

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

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

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

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

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

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

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

 

 

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

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

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

См. также

Работа с интерфейсом Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    55436    17    23    

43

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Богатый редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    63824    44    59    

82

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

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

2400 руб.

29.06.2020    19717    28    6    

44

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

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

20.08.2024    21824    mrXoxot    44    

128

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

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    10934    smielka    37    

105

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

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

27.12.2023    17954    1225    elcoan    53    

125

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

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

3 стартмани

10.04.2023    12654    167    acces969    31    

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

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

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