В платформе «1С:Предприятие» есть специальный объект – План видов характеристик, с помощью которого можно создавать механизмы для того, чтобы пользователь имел возможность создавать и описывать произвольные характеристики для каких-либо объектов информационной базы. Например, для описания свойств номенклатуры пользователь может создать такие виды характеристик, как Цвет, Качество и т. п., и задать их значения.
Система компоновки данных позволяет использовать эти характеристики при разработке отчетов (). То есть пользователь может отобразить поля характеристик в отчете, установить по ним отбор, условное оформление и т. д. Для извлечения характеристик из базы данных в языке запросов разработано специальное расширение, применяющееся только в системе компоновки данных.
В демонстрационной конфигурации, прилагающейся к книге на компакт-диске, реализована возможность добавления дополнительных свойств к элементам справочника Контрагенты, таких как Категория и Регион. В качестве источника характеристик используется план видов характеристик ВидыХарактеристик, а значения характеристик находятся в регистре сведений ДополнительныеХарактеристики.
Характеристики объектов конфигурации можно описывать и хранить в свойстве Характеристики этих объектов, а можно описывать в каждом конкретном отчете. Первый способ наиболее универсален (он показан в следующем примере ), но в данном разделе мы покажем второй способ. При этом если характеристики описаны в конкретном отчете, то именно они используются системой компоновки данных.
Создадим отчет, отражающий информацию о продажах контрагентам, и отразим в отчете эти характеристики контрагентов. Затем мы выведем полученные данные в диаграмму с помощью конструктора настроек (рис. 2.152).
Рис. 2.152. Требуемый вид отчета
Создадим новый объект конфигурации Отчет и назовем его ПродажиКонтрагентам. Откроем конструктор схемы компоновки данных и добавим новый набор данных – запрос. Откроем конструктор запроса. В качестве источника данных для запроса выберем виртуальную таблицу регистра сведений Продажи.Обороты. В список полей перенесем поля из этой таблицы: