К статье
Практический материал

Отчеты и Аналитика · 9 мин

Как создать диаграмму в отчете 1С

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

Диаграмма в отчете 1С превращает таблицу цифр в наглядный график: руководитель видит динамику продаж, доли по категориям или структуру расходов, не вчитываясь в строки. В типовых конфигурациях на платформе 1С:Предприятие 8.3 диаграммы строятся двумя основными способами — через систему компоновки данных (СКД) в конструкторе отчета и программно, через объект «Диаграмма» в табличном документе.

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

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

Что нужно подготовить перед созданием диаграммы

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

Проверьте, что запрос не содержит итогов «по общему итогу» в неподходящем виде и что группировки соответствуют логике графика. Например, для графика «Продажи по месяцам» запрос должен возвращать период с нужной детализацией — по месяцам, а не по дням, иначе график получится перегруженным.

Определите тип диаграммы заранее: гистограмма подходит для сравнения значений по категориям, график — для динамики во времени, круговая — для долей в целом, изометрическая — для объемного представления. Неправильный тип делает данные нечитаемыми еще на этапе проектирования.

Создание диаграммы через СКД

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

В дереве элементов настроек нажмите «Добавить» и выберите «Диаграмма». У диаграммы появятся три ветки: «Точки», «Серии» и «Значения». В «Точки» перетащите или добавьте группировку по измерению (например, «ПериодМесяц»), в «Серии» — поле показателя или измерения, по которому строятся линии/столбцы. В «Выбранные поля» добавьте ресурс — числовое значение.

Тип диаграммы задается в свойствах: выделите элемент «Диаграмма», откройте палитру свойств и установите «Тип диаграммы» — гистограмма, график, круговая и т.д. Там же настраиваются подписи, легенда, отображение значений и разметка осей.

Ключевые свойства объекта: «ТипДиаграммы» (вид графика), «Серии» (линии или столбцы), «Точки» (категории по оси X), метод «УстановитьЗначение(Точка, Серия, Значение)» связывает их. Дополнительно настраиваются «ОтображатьЛегенду», «АвтоМасштаб» и оформление областей.

Программный способ дает полный контроль, но требует аккуратности: неинициализированные серии, несовпадение точек между сериями и отсутствие проверки на пустую выборку — типовые причины ошибок «Индекс находится за границами массива».

Настройка внешнего вида диаграммы

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

Ограничивайте количество точек: более 15–20 категорий на одном графике делают подписи оси нечитаемыми. Если точек много, укрупните период (месяцы вместо дней) или выведите топ-N через отбор в запросе, а остаток объедините в категорию «Прочие».

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

Проверка результата и типичные ошибки

Сформируйте отчет и сверьте диаграмму с табличными данными того же отчета: сумма по сериям должна совпадать с итогом ресурса. Расхождение обычно означает, что в диаграмму попали не все строки (например, из-за отбора или вложенной группировки) или часть значений NULL, которые диаграмма игнорирует.

Контрольные точки

Как проверить результат

Диаграмма отображается в отчете
Норма

График виден, серии и точки подписаны

Тревожный признак

Пустая область — нет ресурса в выбранных полях или пустая выборка

Суммы на диаграмме
Норма

Совпадают с итогами табличной части отчета

Тревожный признак

Расхождения — проверьте отборы и группировки

Подписи осей
Норма

Все категории читаемы, не налезают друг на друга

Тревожный признак

Подписи слиплись — слишком много точек, укрупните группировку

Круговая диаграмма
Норма

Показывает доли одной серии

Тревожный признак

Отображается не тот показатель — лишние серии в настройках

Типичные ошибки
01
Нет числового ресурса в выбранных полях — диаграмма пустая, хотя запрос возвращает данные
02
Несколько серий в круговой диаграмме — отображается только первая, остальные «пропадают»
03
Нет упорядочивания по периоду в запросе — график динамики рисуется вразнобой
04
Слишком много точек (дни за год) — подписи нечитаемы, отчет формируется медленно
05
Программное заполнение без проверки пустой выборки — ошибка «Индекс за границами» при отсутствии данных

Выбор способа: СКД или программный вывод

Маршрут решения

Как выбрать действие

Нужен интерактивный отчет с настройками для пользователяИспользуйте диаграмму в СКД — без единой строки кода
Диаграмма нужна в печатной форме или PDFВыводите программно в табличный документ через объект «Диаграмма»
Данные собираются сложным алгоритмом, не укладывающимся в запросПрограммное заполнение серий и точек в модуле отчета
Нужно быстро дать диаграмму конечному пользователю типовой конфигурацииНастройте вариант отчета в режиме «Предприятия» и сохраните вариант

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

Итог

Что важно запомнить

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

Частые вопросы

Почему диаграмма в отчете пустая, хотя данные есть?

Чаще всего числовой ресурс не добавлен в «Выбранные поля» диаграммы либо группировки в «Точках» и «Сериях» пустые. Также проверьте, не обнуляет ли отбор все строки выборки — сформируйте тот же отчет в виде таблицы и убедитесь, что данные выводятся.

Можно ли вывести две диаграммы в одном отчете?

Да. В СКД на закладке «Настройки» добавьте второй элемент «Диаграмма» и настройте у каждой свои точки и серии. При программном выводе просто добавьте второй рисунок табличного документа с собственным объектом «Диаграмма».

Как сделать диаграмму доступной пользователю без конфигуратора?

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

Круговая диаграмма показывает не тот показатель. Что делать?

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

Диаграмма тормозит формирование отчета. Как ускорить?

Сократите число точек: укрупните период группировки, ограничьте выборку отбором или выведите топ-N значений. Также проверьте сам запрос — чаще тормозит именно он, а не отрисовка графика.

Можно ли сохранить диаграмму как картинку?

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