При работе с системой компоновки данных (СКД) разработчики часто сталкиваются с задачей визуализации данных, когда необходимо вывести в одном столбце диаграммы не просто сумму всех ресурсов, а сгруппированные данные. Например, когда для одной организации или заказа нужно показать три логических блока: «Заказ», «Производство» и «Сборка», каждый из которых состоит из подпоказателей (факт и остаток).
Прежде чем приступать к настройкам, важно понять, как именно СКД интерпретирует данные для построения графиков. В терминологии диаграмм 1С мы имеем:
Стандартная ошибка заключается в попытке добавить все 6 ресурсов в один список значений. В этом случае СКД создаст 6 отдельных сегментов, не понимая, что три из них должны быть «объединены» логически. Чтобы добиться результата, нам нужно перестроить архитектуру данных.
Самый эффективный и надежный способ решить эту задачу — отказаться от вывода ресурсов как отдельных колонок в запросе и привести таблицу к «плоскому» виду. Рассмотрим пошагово, как это реализовать.
ОБЪЕДИНИТЬ ВСЕ, чтобы превратить данные в такой вид:
ВЫБРАТЬ
Организация,
Заказ,
"Заказ" КАК ВидОперации,
"Факт" КАК ТипПоказателя,
Заказано КАК Количество
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
Организация,
Заказ,
"Заказ" КАК ВидОперации,
"Остаток" КАК ТипПоказателя,
ОсталосьПоЗаказу КАК Количество
...
ВидОперации и ТипПоказателя в качестве серий.ВидОперации как родительскую группу для серии, а внутри него — ТипПоказателя. Это позволит 1С корректно отобразить легенду и сгруппировать сегменты.Если изменять структуру запроса через ОБЪЕДИНИТЬ ВСЕ затруднительно, можно воспользоваться механизмом вычисляемых полей в СКД. Мы можем создать поле ГруппаОпераций с помощью выражения ВЫБОР КОГДА ... ТОГДА ... КОНЕЦ. Это позволит динамически классифицировать ресурсы прямо в процессе компоновки.
Однако помните, что для визуального разделения «столбцов в столбцах» именно логика вложенных серий является ключом. Если вы видите, что все сегменты сливаются в одну «башню», значит, в настройках диаграммы СКД неверно указана иерархия серий. Разверните структуру серий в настройках, добавив туда сначала категорию (Заказ/Производство/Сборка), а затем сам показатель.
Чтобы диаграмма читалась легко, воспользуйтесь следующими рекомендациями:
Условное оформление для серий. Например, все показатели «Факт» можно окрасить в насыщенные цвета (синий, зеленый, красный), а «Остатки» — в соответствующие им бледные оттенки тех же цветов. Это позволит пользователю моментально считывать статус выполнения задач.Таблицу. Если в ячейках таблицы данные группируются так, как вы ожидаете, то переход к диаграмме с этими же настройками (Точки - строки, Серии - колонки) пройдет практически безболезненно.Применяя данные методы, вы сможете преобразовать сложный отчет из обычной таблицы в наглядную аналитическую панель, которая позволит руководству быстро оценивать ход производства по этапам.