gifts2017

Свойства Номенклатуры в узле свойств ХарактеристикиНоменклатуры универсального отчета

Опубликовал kylux в раздел Программирование - Практика программирования

Частный случай отчетов с группировкой по характеристике номенклатуры, когда в одну (!) строку отчета нужно вывести в виде дополнительных полей и свойства характеристики, и свойства владельца характеристики (номенклатуры) - в случае, когда номенклатура не указывается как группировка в отчете.

Небольшая вставка в процедуру универсального отчета решает эту проблему. Плюс, естественно, работают отборы и группировки и по свойствам характеристики, и по свойствам номенклатуры. Естественно, свойство номенклатуры при настройке в данном случае нужно выбирать из узла Характеристика номенклатуры.

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

Ниже вставка этого кусочка, в файле полная версия этой процедуры

Процедура УстановитьНачальныеНастройкиПоМетаданнымРегистра(ИмяРегистра)

...

            Для каждого Назначение из МассивНазначений Цикл
               
                ДобавитьСвойстваИКатегорииДляПоля("ИсточникДанных." + Измерение.Имя, Измерение.Имя, Измерение.Представление(), Назначение);
               
                // ANB (Добавил свойства владельца характеристики номенклатуры)
               
                Если ТипИзмерения = Тип("СправочникСсылка.ХарактеристикиНоменклатуры") Тогда
                    ДобавитьСвойстваИКатегорииДляПоля("ИсточникДанных." + Измерение.Имя + ".Владелец",
                        Измерение.Имя, "Номенклатура", // Измерение.Представление(),
                        ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура, Истина);
                КонецЕсли;
               
            КонецЦикла;

...

Для отчетов, которые строятся не по регистру, а по запросу, в настройках отчета нужно похожий фокус сделать, например в отчете по товарам в резерве на складах

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

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Процедура УстановитьНачальныеНастройкиПоМетаданнымРегистра.txt
.txt 18,89Kb
12.12.14
67
.txt 18,89Kb 67 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Оля Ф (OLGAFUTURUOlena) 04.05.11 17:53
Вот как раз совсем недавно билась с отчетом,где нужно было выводить значение одного из свойств справочника Номенклатура.
Как раз бы пригодилось наверное. Только отчет уже готов)
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа