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

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

Как сделать график в 1С: пошаговая инструкция

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

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

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

Ниже разобраны все три сценария: от простого построения диаграммы в пользовательском режиме до программного вывода графика на форму, а также настройка графиков работы сотрудников. Инструкции применимы к типовым конфигурациям на управляемых формах (Бухгалтерия 3.0, Управление торговлей 11, ERP, ЗУП 3.1).

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

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

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

На закладке «Настройки» схемы компоновки в дереве настроек выберите корневой элемент «Отчет» и нажмите кнопку добавления диаграммы (или через контекстное меню «Новая диаграмма»). В свойствах диаграммы укажите: «Точки» — поле измерения (Месяц), «Серии» — числовое поле (СуммаОборот). Тип диаграммы по умолчанию — гистограмма; его можно поменять в дополнительных настройках вывода.

Порядок действий
  1. 1
    Создайте отчет и откройте основную схему компоновки данных
  2. 2
    Добавьте набор данных «Запрос» с полями: измерение и числовой ресурс
  3. 3
    На закладке «Настройки» добавьте в структуру отчета элемент «Диаграмма»
  4. 4
    Укажите точки (ось X) и серии (значения) диаграммы
  5. 5
    Сохраните отчет и сформируйте его в режиме Предприятия
  6. 6
    Проверьте, что диаграмма отображается и значения соответствуют данным

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

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

Там же настраиваются заголовок, легенда, подписи значений, цвета серий и отображение маркеров. Если серий несколько (например, продажи по нескольким складам), добавьте группировку по полю серии — СКД автоматически построит несколько линий или столбцов с легендой.

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

Какой тип диаграммы выбрать

Гистограмма

Сравнение значений между категориями: продажи по менеджерам, остатки по складам. Плохо читается при большом числе точек.

График (линейный)

Динамика во времени: выручка по месяцам, курс валют. Требует упорядоченного измерения по оси X.

Круговая

Доля в целом: структура затрат, доля клиентов в выручке. Не подходит для сравнения периодов и для более чем 5–7 долей.

Измерительная

Один показатель относительно шкалы: выполнение плана в процентах. Не подходит для многомерных данных.

Как вывести график программно на форму

Если диаграмму нужно разместить не в отчете, а прямо на форме обработки или документа, используется объект встроенного языка «Диаграмма». На форму добавляется реквизит типа «Диаграмма», а данные заполняются кодом.

Логика проста: у диаграммы очищаются серии и точки, затем в цикле по данным создаются точки (значения оси X), серии (наборы значений) и через метод УстановитьЗначение задается число на пересечении точки и серии. Ниже минимальный пример.

ДиаграммаФормы.Очистить();

ДиаграммаФормы.ТипДиаграммы = ТипДиаграммы.График;

ДиаграммаФормы.Серии.Добавить("Продажи");

Пока Выборка.Следующий() Цикл

Точка = ДиаграммаФормы.Точки.Добавить(Формат(Выборка.Период, "ДЛФ=D"));

ДиаграммаФормы.УстановитьЗначение(Точка, ДиаграммаФормы.Серии[0], Выборка.Сумма);

КонецЦикла;

После заполнения данных обновите отображение элемента формы. Учтите, что диаграмма на форме не обновляется сама при изменении данных в базе — код заполнения нужно вызывать повторно, например по кнопке «Обновить» или в обработчике ожидания.

График работы сотрудников в ЗУП и ERP

Вторая частая задача — график работы: пятидневка, сменный график, сутки через трое. В конфигурациях «Зарплата и управление персоналом» и ERP это справочник «Графики работы сотрудников» (раздел «Настройка» или «Кадры»). Создайте новый элемент, задайте название и заполните шаблон: для пятидневки достаточно указать рабочие и выходные дни недели, для сменного — цикл по дням с видами времени (явка, ночные, выходной).

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

Проверить результат можно в отчете «Табель учета рабочего времени (Т-13)»: норма часов сотрудника должна соответствовать назначенному графику. Если норма нулевая или явно неверная — чаще всего график не заполнен на нужный период или не назначен сотруднику актуальным кадровым документом.

График платежей и поставок в документах

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

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

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

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

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

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

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

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

Соответствие диаграммы таблице
Норма

Значения в нескольких точках совпадают с табличным вариантом отчета

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

Цифры на графике не сходятся с таблицей — проверяйте функцию свертки и отборы

Ось времени
Норма

Периоды идут по порядку слева направо

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

Месяцы перемешаны — поле периода имеет строковый тип

График работы сотрудника
Норма

Норма часов в табеле Т-13 совпадает с ожидаемой по графику

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

Норма нулевая или неверная — график не заполнен на период или не назначен сотруднику

Частые вопросы о графиках в 1С

Можно ли построить диаграмму без конфигуратора, прямо в режиме Предприятия?

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

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

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

Как вывести диаграмму на начальную страницу (рабочий стол)?

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

График работы заполнен, но в табеле норма не совпадает. Что проверить?

Проверьте три вещи: заполнен ли график на весь нужный месяц (кнопка «Заполнить» в элементе справочника), назначен ли график сотруднику актуальным кадровым документом и не перекрыт ли он индивидуальным графиком или документом отсутствия. После исправлений перезаполните табель.

Можно ли сохранить диаграмму как картинку или вставить в печатную форму?

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

Итог

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

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