Свойства Номенклатуры в узле свойств ХарактеристикиНоменклатуры универсального отчета
Частный случай отчетов с группировкой по характеристике номенклатуры, когда в одну (!) строку отчета нужно вывести в виде дополнительных полей и свойства характеристики, и свойства владельца характеристики (номенклатуры) — в случае, когда номенклатура не указывается как группировка в отчете.
Небольшая вставка в процедуру универсального отчета решает эту проблему. Плюс, естественно, работают отборы и группировки и по свойствам характеристики, и по свойствам номенклатуры. Естественно, свойство номенклатуры при настройке в данном случае нужно выбирать из узла Характеристика номенклатуры.
- Описание
- Подробнее
Описание
Понадобилась фича для выгрузки в Excel отчета без иерархии по характеристике и номенклатуре со свойствами характеристик и номенклатуры…
Ниже вставка этого кусочка, в файле полная версия этой процедуры
Процедура УстановитьНачальныеНастройкиПоМетаданнымРегистра(ИмяРегистра)
...
Для каждого Назначение из МассивНазначений Цикл
ДобавитьСвойстваИКатегорииДляПоля("ИсточникДанных." + Измерение.Имя, Измерение.Имя, Измерение.Представление(), Назначение);
// ANB (Добавил свойства владельца характеристики номенклатуры)
Если ТипИзмерения = Тип("СправочникСсылка.ХарактеристикиНоменклатуры") Тогда
ДобавитьСвойстваИКатегорииДляПоля("ИсточникДанных." + Измерение.Имя + ".Владелец",
Измерение.Имя, "Номенклатура", // Измерение.Представление(),
ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура, Истина);
КонецЕсли;
КонецЦикла;
...Для отчетов, которые строятся не по регистру, а по запросу, в настройках отчета нужно похожий фокус сделать, например в отчете по товарам в резерве на складах
// В универсальном отчете включен флаг использования свойств и категорий.
Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда
// Добавление свойств и категорий поля запроса в таблицу полей.
// Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий.
// УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(. , , , );
УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "РегЗаказы.Номенклатура" , "Номенклатура", "Номенклатура", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура);
УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "РегЗаказы.ХарактеристикаНоменклатуры" , "ХарактеристикаНоменклатуры", "Характеристика номенклатуры", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ХарактеристикиНоменклатуры);
// ANB (Добавил свойства владельца характеристики номенклатуры)
УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(
"РегЗаказы.ХарактеристикаНоменклатуры.Владелец", "ХарактеристикаНоменклатуры", "Номенклатура",
ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура, Истина);
// Добавление свойств и категорий в исходный текст запроса.
УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса);
КонецЕсли;

