1с скд параметр расшифровки в макете

Использование объекта ДанныеРасшифровки

В некоторых ситуациях использовать возможности объекта ОбработкаРасшифровкиКомпоновкиДанных не представляется возможным, и возникает необходимость программного получения значений полей, которые присутствовали в некоторой ячейке табличного документа, для которой можно получать расшифровку.

В данной статье описывается, каким образом устроен объект ДанныеРасшифровки и как его можно использовать для получения значений полей и полей группировок.

Содержимое расшифровки

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

ВАЖНО!
Для того, чтобы при выводе отчета объект ДанныеРасшифровки был заполнен, следует его создать при компоновке макета и передать в процессор компоновки данных.

Для создания объекта ДанныеРасшифровки, при вызове метода Выполнить компоновщика макета, следует передать переменную, в которую требуется поместить созданный объект.
Пример:

МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки);

Для того, чтобы данные расшифровки заполнились при формировании результата, необходимо передать объект ДанныеРасшифровки в метод Инициализировать процессора компоновки данных.

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

Если отчет формируется при помощи стандартной команды отчета Сформировать, то данные расшифровки помещаются в свойство расширения формы отчета ДанныеРасшифровки.

Объект ДанныеРасшифровки содержит настройки, для которых этот объект был сформирован (заполняются при генерации макета компоновки данных) и коллекции элементов расшифровки (заполняются при формировании результата).

Существуют два типа элементов расшифровки: ЭлементРасшифровкиКомпоновкиДанныхПоля и ЭлементРасшифровкиКомпоновкиДанныхГруппировка.

ЭлементРасшифровкиКомпоновкиДанныхПоля содержит список значений полей, которые присутствуют в элементе расшфровки. В каждом значении имеется указание того, для какого поля содержится значение (соответствует пути к данным поля в терминах настроек компоновки данных, например: Номенклатура.ОсновнойПоставщик), само значение поля, и указание того, что значение было получено для иерархической записи (имеет значение Истина, если значение было получено от иерархической записи).

ЭлементРасшифровкиКомпоновкиДанныхГруппировка содержит имя группировки, для которой был создан элемент (соответствует идентификатору группировки в настройках из данных расшифровки).

При компоновке результата процессор компоновки данных заполняет данные расшифровки следующим образом:

1. При выводе группировки помещает в данные расшифровки элемент типа ЭлементРасшифровкиКомпоновкиДанныхГруппировка, с указанием того, какая группировка выводится. Если выводится вложенная группировка, то в качестве идентификатора родительского элемента группировки будет использован идентификатор расшифровки от родительской группировки.

2. В качестве дочернего к элементу группировки выдает в данные расшифровки элемент типа ЭлементРасшифровкиКомпоновкиДанныхПоля, в который выдает значения полей, по которым осуществлялась группировка. Например, если группировка осуществлялась по полю Номенклатура.ОсновнойПоставщик, то в значениях полей будет находиться значение для этого поля. При этом, если группировка выполнялась по иерархии и в настоящий момент выдавалась иерархическая запись, то в значении поля группировки об этом будет сказано в свойстве Иерархия.

Обработка расшифровки.

При обработке расшифровки, в обработчик поля табличного документа будет передаваться идентификатор расшифровки. По этому идентификатору из объекта данных расшифровки можно получить элемент расшифровки. В этом элементе будут находиться значения полей, которые предполагалось выдавать в качестве расшифровки в данной ячейке.

Источник

АйТиБложик

Маленький IT блог с характером 1С.

СКД. Добавление собственного пункта расшифровки.

Потребовалось как-то создать отчет, который выводит информацию об оплате товара: не оплачен (сумма оплаты = 0), частично оплачен (сумма оплаты табличного документа ОбработкаРасшифровки

На заметку для отчетов, работающих под управляемыми формами! Переопределять действия по расшифровке отчета, вызываемой при нажатии правой кнопки мыши, нужно в обработчике события ОбработкаДополнительнойРасшифровки. А в обработчике события ОбработкаРасшифровки нужно переопределять действия, происходящие при двойном щелчке мыши на поле отчета.

Так как собственная расшифровка должна выполняться для детальной записи, написал функцию по определению такой записи:
Функция ЭтоДетальнаяЗапись(ДанныеРасшифровки, Расшифровка)
ЭтоДетальнаяЗапись = Ложь;
Элемент = ДанныеРасшифровки.Элементы[Расшифровка];
Если ТипЗнч(Элемент) = Тип(«ЭлементРасшифровкиКомпоновкиДанныхПоля») Тогда
Элементы = Элемент.ПолучитьРодителей();
Если Элементы.Количество() > 0 Тогда
Элемент = Элементы[0];
Если ТипЗнч(Элемент) = Тип(«ЭлементРасшифровкиКомпоновкиДанныхГруппировка») Тогда
ЭтоДетальнаяЗапись = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат ЭтоДетальнаяЗапись;
КонецФункции

Далее в процедуре события обработки расшифровки задал собственный алгоритм обработки расшифровки для поля СуммаОплаты:

// 1. Получаем имя поля, для которого пользователь хочет применить расшифровку.
ИмяПоля = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0].Поле;

// 2. Определяем тип записи, детальная она или группировочная, т.к. расшифровку необходимо выполнять для детальной записи.
ЭтоДетальнаяЗапись = ЭтоДетальнаяЗапись(ДанныеРасшифровки, Расшифровка);

// 3. Выполняем проверку, если это поле СуммаОплаты и запись является детальной, то применяем собственный обработчик расшифровки.
Если ИмяПоля = «СуммаОплаты» И ЭтоДетальнаяЗапись Тогда

// 4. Отменяем стандартную обработку расшифровки.
СтандартнаяОбработка = Ложь;

// 5. Задаем список стандартных действий расшифровки, которые будут доступны пользователю.
ДоступныеДействия = Новый Массив;
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Отфильтровать);
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать);

// 6. Задаем собственный список действий расшифровки, в моем случае это единственный пункт под названием «Расшифровать сумму».
ДополнительныеДействия = Новый СписокЗначений;
ДополнительныеДействия.Добавить(«РасшифроватьСумму», «Расшифровать сумму»);

// 7. Создаем объект, обрабатывающий расшифровку.
ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));

// 9. Проверим обработку расшифровки на изменение настроек.
Если ПараметрыВыбранногоДействия <> Неопределено Тогда

// 10. Если настройки изменены, значит пользователь выбрал стандартную расшифровку, которую мы определили в 5 пункте. Так как мы уже отменили выполнение стандартной операции в 4 пункте, то выполним стандартную обработку расшифровки программно.

// Открытие нового отчета с выводом результата для обычной формы.
//Отчет = Отчеты[Метаданные().Имя].Создать();
//Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(ПараметрыВыбранногоДействия);
//Форма = Отчет.ПолучитьФорму();
//Отчет.СкомпоноватьРезультат(Форма.ЭлементыФормы.Результат);
//Форма.Открыть();

// Выводим результат в текущий отчет.
ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ПараметрыВыбранногоДействия);
ЭлементыФормы.Результат.Очистить();
ОтчетОбъект.СкомпоноватьРезультат(ЭлементыФормы.Результат, ДанныеРасшифровки);

// 10. Получим значение полей для собственной расшифровки см. рисунок 2, под 0 индексом получаем значение поля Реализация в текущей строке, а под 1 индексом значение поля СуммаОплаты.
ДокРеализация = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0].Значение;
СуммаОплаты = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[1].Значение;

// 11. Реализация собственной расшифровки и вывод результата (собственный алгоритм расшифровки приводить не буду, т.к. он громоздкий).
Сообщить(«Сумма оплаты = » + СуммаОплаты + » по документу » + Строка(ДокРеализация));

КонецЕсли;
КонецЕсли;
КонецПроцедуры

Итоговый программный код:
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)

Перем ВыбранноеДействие;
Перем ПараметрыВыбранногоДействия;

ИмяПоля = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0].Поле;
ЭтоДетальнаяЗапись = ЭтоДетальнаяЗапись(ДанныеРасшифровки, Расшифровка);

Если ИмяПоля = «СуммаОплаты» И ЭтоДетальнаяЗапись Тогда

СтандартнаяОбработка = Ложь;

ДоступныеДействия = Новый Массив;
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Отфильтровать);
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать);

ДополнительныеДействия = Новый СписокЗначений;
ДополнительныеДействия.Добавить(«РасшифроватьСумму», «Расшифровать сумму»);

Если ПараметрыВыбранногоДействия <> Неопределено Тогда
ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ПараметрыВыбранногоДействия);
ЭлементыФормы.Результат.Очистить();
ОтчетОбъект.СкомпоноватьРезультат(ЭлементыФормы.Результат, ДанныеРасшифровки);
Иначе
Сообщить(«Сумма оплаты = » + СуммаОплаты + » по документу » + Строка(ДокРеализация));
КонецЕсли;

Источник

Использование параметра расшифровки в макете

Доброго времени суток!

По двойному щелчку на ячейке с расшифровкой можно вызвать свою процедуру. Для реализации этого следует выполнить несколько условий:
1)Вывод табличного документа должен осуществляться в объект ПолеТабличногоДокумента;
2)Должно быть присвоено значение свойству ячейки ПараметрРасшифровки, например, РасшифровкаКонтрагента.
3)Параметру расшифровки РасшифровкаКонтрагента присваивается заполненный при формировании табличного документа нужными значениями СписокЗначений или чаще Структура. В частности, может передаваться имя стандартного отчета конфигурации и параметров, которые нужно задать в форме отчета, например, период дат, номер счета и т.д. А потом этот отчет вызывается как процедура.
4)Для объекта ПолеТабличногоДокумента свойство ТолькоПросмотр нужно установить в значение Истина.
5)Код пользовательской процедуры помещается в процедуру
ПолеТабличногоДокумента1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка), и первой строкой в ней должна быть такая:
СтандартнаяОбработка = Ложь;

Приведу небольшой примерчик, открывающий для «щелкнутого» контрагента подчиненный справочник.

Процедура КнопкаСформироватьНажатие(Кнопка)
Контрагенты = Справочники.Контрагенты;
Выборка = Контрагенты.Выбрать();
Таб = ЭлементыФормы.ПолеТабличногоДокумента1;
Макет = ПолучитьМакет(«Макет»);
Пока Выборка.Следующий() Цикл
Если Выборка.ЭтоГруппа = Ложь Тогда
Область = Макет.ПолучитьОбласть(«Строка»);
Область.Параметры.Контрагент = Выборка.Наименование;
.
СтруктураРасшифровки = Новый Структура;
СтруктураРасшифровки.Вставить(«Контрагент»,Выборка.Ссылка);
СтруктураРасшифровки.Вставить(«. «. );
.
Область.Параметры.РасшифровкаКонтрагента = СтруктураРасшифровки;
ЭлементыФормы.ПолеТабличногоДокумента1.Вывести(Область);
Иначе
Продолжить;
КонецЕсли;
КонецЦикла;
ЭлементыФормы.ПолеТабличногоДокумента1.ТолькоПросмотр = Истина;
КонецПроцедуры

Процедура ПолеТабличногоДокумента1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Договоры = Справочники.Договоры.ПолучитьФормуСписка();
Договоры.ПараметрОтборПоВладельцу = Расшифровка.Контрагент;
Договоры.Открыть();
КонецПроцедуры

Источник

Расшифровка в 1С СКД

При разработке отчетов в 1С достаточно часто требуется такая функция как Расшифровка 1С СКД. Обычно под расшифровкой понимается формирование такого же отчета с установленными отборами с дополнительной (более подробной) группировкой.

В том числе такая возможность имеется и в отчетах, созданных с помощью 1С СКД. При этом функционал расшифровки является встроенным и позволяет выполнять пользователю различные действия, без приложения дополнительных усилий со стороны программиста. То есть при создании отчета на СКД программисту достаточно настроить только схему компоновки – без дополнительного кода в модуле отчета и без добавления форм отчета.

Стандартные возможности расшифровки 1С СКД

В пользовательском режиме расшифровку отчета можно вызвать двумя способами:

Какие действия доступны при выполнении расшифровки:

Что еще можно сделать с расшифровкой без программирования? В расшифровку попадают значения полей из наборов данных. Иногда возникает необходимость в отчет вывести одно значение, но в качестве расшифровки должно выступать другое поле. Например, регистратор можно выводить как номер, но необходимо, чтобы при клике по нему открывался документ. Это можно сделать без дополнительного программирования – через установку выражения представления

1с скд параметр расшифровки в макете

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

Дальше мы будем рассматривать все более сложные ситуации при разработке отчета на СКД. Например, вам может понадобиться добавить свою форму в отчет – добавить какие-то дополнительные команды, настроить более сложный интерфейс для пользователя.

При добавлении новой формы отчета система производит сама настройку формы для использования совместно с СКД. В том числе добавляется реквизит «ДанныеРасшифровки» с типом «Строка». И в свойствах формы производится связь атрибута «Данные расшифровки» с созданным реквизитом.

1с скд параметр расшифровки в макете

Если вы добавляете форму отчета самостоятельно – например, как произвольную или копируете форму из какого-то другого объекта, для правильной работы расшифровки вам необходимо добавить реквизит и настроить его связь, как описано выше.

Расшифровка при программном выполнении 1С СКД

При разработке отчета на СКД вам иногда может понадобиться выполнять программного выполнения. Например, всегда – при использовании внешних наборов данных. Например, в ситуации, когда в отчете есть больше чем одна схема компоновки.

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

1с скд параметр расшифровки в макете

Макеты и расшифровка 1С СКД

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

Рассмотрим настройку простого отчета по регистру оборотов «Продажи»

1с скд параметр расшифровки в макете

В схеме добавлено два макета группировки

1с скд параметр расшифровки в макете

Если сформировать отчет и навести курсор на группировку «Контрагент», то курсор меняется на «лупу с крестиком» — расшифровка доступна. Если навести курсор на группировки «Номенклатура» или «Детали», расшифровка недоступна.

Макет для группировки «Номенклатура» выглядит следующим образом

1с скд параметр расшифровки в макете

Для ячейки макета «Номенклатура» определим свойство «ПараметрРасшифровки»

1с скд параметр расшифровки в макете

Назвать параметр расшифровки нужно отлично от свойства «Параметр», тогда в параметрах макета добавится наш параметр расшифровки:

1с скд параметр расшифровки в макете

Зайдем здесь в редактирование поля «Выражение», определим основное действие. Например, «Расшифровать»:

1с скд параметр расшифровки в макете

Теперь это действие будет выполняться по умолчанию при клике ЛКМ, при клике ПКМ доступно меню всех действий расшифровки. Для остальных ячеек (Количество, Сумма) зададим такое же название параметра расшифровки. В этом случае расшифровка будет действовать одинаково для всех ячеек в группировке.

В окне редактирования параметра расшифровки мы можем также переопределить значения полей набора, которые будут использоваться для расшифровки. Например, для поля «Номенклатуры» можно указать выражение «Контрагент» и при открытии значения будет открываться карточка контрагента:

1с скд параметр расшифровки в макете

1с скд параметр расшифровки в макете

Мы разобрали уже немало вариантов применения расшифровки в СКД, но до сих пор не написали ни одной (ну или почти ни одной) строчки кода. В следующей главе рассмотрим ситуации, когда для обработки расшифровки необходимо написать программный код.

Произвольная обработка расшифровки 1С СКД

Когда может понадобиться произвольная обработка расшифровки? Например, если результат отчета вам нужно расшифровать этим же отчетом, но с другими настройками, с другим макетом, выполнить расшифровку другим отчетом, выполнить какую-то обработку и т.п.

Для реализации произвольной расшифровки служит событие «ОбработкаРасшифровки» у табличного документа и обработчик «ОбработкаДополнительнойРасшифровки». Первой событие вызывается по ЛКМ, второй при клике ПКМ.

1с скд параметр расшифровки в макете

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

1с скд параметр расшифровки в макете

Нас будут интересовать параметры: «Расшифровка» — в этом параметре указывается идентификатор расшифровки, в параметре «СтандартнаяОбработка» указываем «Истина», если нужно выполнить стандартный алгоритм расшифровки, «Ложь» если мы реализуем произвольную расшифровку.

Здесь используется функция общего модуля «ПолучитьМассивПолейРасшифровки», которая кроме текущего значения параметра расшифровки получается значения родительский полей и значения установленных отборов:

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

В этом нам может помочь объекта с типом «ОбработкаРасшифровкиКомпоновкиДанных». В обработчике «ОбработкаРасшифровки» мы можем написать такой код:

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

В обработке выбранного действия мы производится собственно действия по расшифровке:

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

1с скд параметр расшифровки в макете

Можно эти настройки получать также с помощью таких методов объекта «ОбработкаРасшифровкиКомпоновкиДанных» как: Упорядочить, Расшифровать, Сгруппировать, Отфильтровать.

Источник

СКД. Шаг 3. Используем макеты для оформления отчета

Введение. Описание задачи

Всем привет, всех с наступившим Новым 2020 годом! В данной статье я предлагаю вам разобрать такой интересный функционал как использование собственных макетов в системе СКД. Отмечу, что за свою достаточно продолжительную практику (порядка 15 лет), я, наверное, всего пару-тройку раз встречал в чужих отчетах (не в типовых) использование данной возможности.

Подготовка отчета в СКД

Воспользуемся типовой конфигурацией Розница 2.2 на платформе предприятия 8.3.15.1700. Подготовим простой отчет для определения количества и суммы продаж по организации/кассе в разрезе дней за выбранный период.

Для этого напишем запрос по регистру накопления «Продажи» (обороты) в макете компоновки данных. Поскольку, в этом регистре нет данных о КассеККМ, с которой была совершена продажа, то мы левым соединением с регистратором получаем кассу продажи из документа. С условием, что документ-регистратор является отчетом розничных продаж. Так же я добавлю несколько вспомогательных полей, которые потребуются в отчете на основе собственного макета.

В общем виде набор данных запрос выглядит вот так:

На закладке «Ресурсы» определим какие из полей являются ресурсами и выберем выражение расчета этого поля по другим колонкам.

1с скд параметр расшифровки в макете

Рис.1. Определяем ресурсы отчета.

Далее, определим параметры данного отчета. В качестве «Периода» реализуем задействуем такую возможность СКД как тип «СтандартныйПериод» (можете здесь поставить «галочку» для дальнейшего использования в ваших СКД отчетах вне зависимости как вы будете их реализовывать). См. как это сделать:

1с скд параметр расшифровки в макете

Рис.2. Создаем параметр «Период» в отчете на основе дат начала и окончания.

Затем, в «Настройках» выбираем доступные поля и ресурсы для отображения отчета.

1с скд параметр расшифровки в макете

Рис.3. Создаем саму таблицу отчета с выбранными полями.

В пользовательских настройках отчета включаем созданный нами параметр «Период«:

1с скд параметр расшифровки в макете

Рис.4. Включаем в пользовательские настройки параметр «Период».

1с скд параметр расшифровки в макете

Рис.5. Сформированный отчет в СКД в «базовом варианте».

Обычно, на этом все и заканчивается. Но, я продолжу и перехожу к работе с собственными макетами в следующем разделе.

Реализация собственного макета оформления. Подготовка настроек

Начну с того, что создам копированием новый вариант настройки отчета. Пусть он называется «Основной1«. В общем виде эта настройка выглядит вот так:

1с скд параметр расшифровки в макете

Рис.6. Настройка отчета для собственного макета.

Распишу каждую строку данной настройки:

ДетальныеЗаписи (ШапкаМ)

ДетальныеЗаписи (СтрокаОтчета)

ДетальныеЗаписи (ИтогиТаблицы)

Наборы реквизитов для группировок такие:

Везде снимаем галку «Авто».

Реализация собственного макета оформления. Рисуем новый макет

Переходим на закладку «Макеты» и начнем создавать требуемый макет. В итоговом виде, он выглядит вот так:

1с скд параметр расшифровки в макете

Рис.7. Настройка отчета для собственного макета.

Опишу процесс создания этого макета.

Все, макет нарисован. Он выглядит так как нам нужно.

1с скд параметр расшифровки в макете

Рис.8. Добавлена группировка «СводныйЗаголовок» и заполнены параметры макета для этой группировки.

1с скд параметр расшифровки в макете

Рис.9. В группировке «ИтогиТаблицы» используем параметры «КоличествоОборот» и «СтоимостьОборот».

1с скд параметр расшифровки в макете

Далее, к каждому макету привязываем область (см. рис.10). Область можно «накликать», удерживая кнопку «Ctrl».

К параметру «Период» я привязал целый шаблон.

Так, печатная форма в СКД нарисована, макеты группировок добавлены и их параметры заполнены, области привязаны, протестируем обработку, перейдя к следующему разделу.

Тестирование задачи

Теперь, предлагаю протестировать задачу. В нашем СКД отчете «вшито» две настройки «Основная» и «Основная1» с использованием собственных макетов.

Проверим работоспособной каждой из них:

Запускаем предприятие, выбираем период и формируем отчет в настройке «Основная1» (с макетом), такая картина:

1с скд параметр расшифровки в макете

Рис.11. Отчет СКД с использованием макета.

Перевыбираем вариант настройки «Основная» и получаем уже эти же данные, но в другой компоновке, но без использования макета. Получилось вот так:

1с скд параметр расшифровки в макете

Рис.12. Отчет СКД без использования макетов. Период использует шаблон.

Данные совпали, все работает. Переходим к разделу «Выводы».

Выводы

В данной публикации я наглядно показал вам базовый принцип работы с макетами в СКД. Приведенный пример не сложный, но наглядно иллюстрирует алгоритм настройки, позволяющий из одних и тех же данных создать несколько вариантов отчета (в данном случае с использования макета и без него). Так же, пример будет полезен тем, кто хочет научиться строить отчеты в СКД с нуля, дорабатывать их, не разрушая их целостность на корню.

1с скд параметр расшифровки в макете

Рис.13. Выбор варианта настройки отчета.

Так. Пожалуй, Все. Пример использование макетов в СКД я описал из собственного опыта и постарался сделать данный материал как можно подробнее, надеюсь, что он вам будет полезен.

Было бы приятно, чтобы вы поддержали данную статью, в свою очередь постараюсь написать еще что-нибудь полезное и интересное для вас. Пусть эта статья будет для вас своего рода «шпаргалкой» для запоминания этого алгоритма, как и для меня в частности.

Спасибо, что дочитали статью до конца. Всем привет!

Предыдущие материалы

Так же, прошу посмотреть мои предыдущие статьи по использованию системы компоновки данных:

Источник

Добавить комментарий

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