Построение диаграмм и графиков в 1С 8.3
Содержание
Быстрее всего график в 1С получить из уже готового отчёта: откройте, например, «Валовую прибыль» или «Остатки и обороты», нажмите Настройки → в структуре добавьте вывод типа «Диаграмма» — и те же цифры лягут столбиками или линией. Если готового варианта нет, диаграмму строят через систему компоновки данных (СКД): это механизм, которым собраны почти все типовые отчёты, и он умеет выводить результат не только таблицей.
Разберём оба пути: как создать график в стандартной конфигурации без программирования и как собрать собственную диаграмму в своём отчёте. Покажу, где настраиваются оси, серии и подписи, как перенести готовый график в Excel или PDF и что делать, когда точек на графике становятся тысячи.
Готовые диаграммы в типовых конфигурациях
В «1С:Бухгалтерии» 3.0, «ЗУП» 3.1 и «Управлении торговлей» 11 часть отчётов уже умеет показывать данные графиком — отдельную обработку писать не нужно.
Порядок одинаковый для всех конфигураций на платформе 8.3 с интерфейсом «Такси»:
- Откройте отчёт (
Отчёты→ нужный раздел). - Нажмите
Показать настройкиилиНастройки. - Перейдите на закладку, которая отвечает за структуру вывода (в разных отчётах она называется «Структура» или «Вид»).
- Добавьте в структуру элемент Диаграмма и перетащите в него поле-показатель (сумму, количество) и поле-разрез (период, номенклатуру, подразделение).
- Сформируйте отчёт — таблица сменится диаграммой.
Если закладки со структурой не видно, у отчёта включён «простой» режим настроек. Переключите вид настроек на расширенный — обычно это кнопка с выпадающим списком рядом с «Настройками».
Самые ходовые разрезы для графика:
- 📊 динамика по месяцам — выручка, прибыль, ФОТ по периодам;
- 🥧 структура — доли номенклатурных групп, статей затрат, подразделений;
- 📈 сравнение — план и факт, этот год и прошлый.
Настройку можно сохранить как собственный вариант отчёта (Ещё → Сохранить вариант), тогда график будет открываться сразу, без повторной сборки структуры. Сохранённый вариант виден только автору; чтобы им пользовались коллеги, вариант публикуют для других пользователей — право на это обычно есть у администратора.
Как построить график через систему компоновки данных
СКД — основной инструмент, когда готового варианта с диаграммой нет. Схему компоновки добавляют во внешний отчёт или в отчёт конфигурации, но логика настройки одна.
В схеме компоновки данных диаграмма — это один из вариантов структуры вывода, наравне с таблицей и группировкой. На закладке Настройки в дереве структуры по правой кнопке выбирают Диаграмма. После этого у диаграммы заполняют две области:
- Точки — то, что откладывается по категориям (ось X у столбчатой или линейной диаграммы): период, контрагент, товар.
- Серии — отдельные линии или группы столбцов: например, по каждому складу своя линия.
В ресурсы схемы (поле Ресурсы) выносят числовой показатель — сумму, количество, остаток. Именно он даёт высоту столбца или положение точки.
Минимальный набор для рабочего графика выглядит так:
- точки —
Период(с нужной периодичностью: день, месяц, квартал); - серии — можно оставить пустыми, если линия одна;
- ресурс —
СуммаилиКоличествос функциейСумма().
Если в точки положить поле с тысячами уникальных значений (например, каждый документ), диаграмма станет нечитаемой. Для точек берите разрез с разумным числом значений — месяцы, группы, а не отдельные строки.
Настройка осей, серий и внешнего вида диаграммы
Тип диаграммы и оформление задаются в её параметрах. В настройках структуры выделите элемент диаграммы и откройте его параметры — там выбирается тип диаграммы и оформление.
Основные типы, которые поддерживает платформа:
| Тип | Когда брать |
|---|---|
| Гистограмма (столбчатая) | Сравнение величин по категориям: выручка по месяцам |
| График (линейный) | Динамика во времени, тренд |
| Круговая | Доли в общей сумме: структура затрат |
| Линейчатая | Рейтинг — топ контрагентов, товаров |
| Измерительная | Один показатель относительно шкалы (KPI) |
| Пузырьковая | Три величины сразу: объём, цена, маржа |
Что обычно правят в параметрах диаграммы:
- 🏷️ подписи значений — включить, чтобы на столбцах стояли цифры;
- 📐 легенда — показать расшифровку серий и её расположение;
- 🎨 цвета серий — чтобы план и факт отличались;
- 🔢 формат чисел по оси — убрать копейки, вывести в тысячах.
Ось значений (вертикальную у гистограммы) платформа масштабирует автоматически по диапазону данных. Если нужно зафиксировать минимум и максимум или шаг делений — это тоже делается в параметрах диаграммы, в свойствах соответствующей оси.
Подписи по горизонтальной оси наезжают друг на друга, когда категорий много. Помогает сменить тип на линейчатую (подписи уходят вертикально) либо укрупнить период — с дней на месяцы.
Для серий полезно держать осмысленный порядок: если линий «План» и «Факт», задайте их последовательность в поле серий, иначе легенда и цвета будут меняться от запуска к запуску.
Собственная диаграмма во внешнем отчёте
Когда нужен график, которого нет в типовой конфигурации, делают внешний отчёт — файл .erf, который подключают к базе без изменения конфигурации.
Порядок в конфигураторе (или в режиме разработчика на платформе):
- Создайте внешний отчёт, добавьте в него основную схему компоновки данных.
- В схеме опишите запрос (конструктором или текстом) — откуда берутся данные.
- На закладке
Настройкидобавьте в структуру Диаграмму и настройте точки, серии, ресурс, как описано выше. - Сохраните файл
.erfи подключите черезФайл→Открытьили разделАдминистрирование→Печатные формы, отчёты и обработки(для расширенного подключения нужны права и включённый механизм дополнительных отчётов).
Перед подключением внешнего отчёта в рабочей базе согласуйте это с администратором: отчёт получает доступ к данным и выполняется с правами запустившего пользователя.
Если диаграмму надо построить программно — на управляемой форме размещают реквизит типа ПолеДиаграммы (точнее, реквизит типа «Диаграмма», выведенный на форму как поле). Данные в неё заполняют двумя способами:
- через ПостроительОтчёта или СхемуКомпоновкиДанных, когда источник — запрос;
- вручную в коде — добавляя серии и точки и расставляя значения в ячейки диаграммы.
Ручное заполнение оправдано для нестандартной логики. Для обычного отчёта быстрее и надёжнее собрать диаграмму в СКД, а не описывать её кодом: меньше строк и настройки доступны пользователю без программиста.
У поля диаграммы на форме есть и обратная задача — получить из неё картинку. Это удобно, когда график надо приложить к письму или сохранить в файл автоматически: диаграмма отдаёт своё изображение, которое дальше записывают на диск или вставляют в макет печатной формы. Если такой автоматики не требуется, выгрузку делают вручную из готового отчёта (следующий раздел) — это проще и не требует доработки конфигурации.
Как выгрузить график в Excel, PDF или картинкой
Сформированный отчёт с диаграммой лежит в табличном документе, и выгрузить его можно несколькими способами.
Сохранить файлом. В сформированном отчёте: Ещё (или главное меню) → Сохранить как / Сохранить копию. Доступные форматы:
.mxl— родной формат 1С, открывается только в 1С;- Excel (
.xlsx) — таблица переносится, а диаграмма чаще вставляется как изображение, а не как «живой» график Excel; - PDF (
.pdf) — для печати и отправки, диаграмма остаётся картинкой; - картинка (
.png,.jpg) — когда нужен только график для презентации или письма.
Если в Excel нужен именно редактируемый график, перенесите таблицу с данными, а диаграмму постройте уже средствами Excel по этим цифрам. 1С отдаёт в Excel диаграмму как рисунок — пересчитывать её в Excel не получится.
Скопировать в буфер. Диаграмму в составе табличного документа можно выделить и скопировать (Ctrl+C), а затем вставить в Word, письмо или презентацию как изображение.
Печать. Диаграмма печатается вместе с отчётом через Печать (Ctrl+P); предварительно загляните в предварительный просмотр — крупные графики иногда разрезаются по страницам.
Если отчётом пользуются регулярно, диаграмму удобно отправлять по расписанию: типовые конфигурации умеют рассылать отчёты на почту (раздел Администрирование → настройки рассылки отчётов, точное название пункта зависит от конфигурации).
Что делать, когда данных для графика много
Диаграмма тормозит и теряет читаемость не от «тяжёлой» базы, а от числа точек. Тысяча столбцов на экране — это и долгая отрисовка, и каша вместо графика.
Несколько приёмов, чтобы график на больших данных оставался быстрым и понятным:
- 🧮 Агрегируйте до диаграммы. Группируйте данные в запросе (
СГРУППИРОВАТЬ ПО) по периоду или группе номенклатуры, а не выводите каждую строку. На графике нужны итоги, а не первичка. - 📅 Укрупняйте период. Для года берите месяцы или кварталы, а не дни: 12 точек читаются, 365 — нет.
- 🔝 Ограничивайте число категорий. Выводите топ-10 контрагентов или товаров, остальное сворачивайте в строку «Прочие». В СКД это делается отбором или условным оформлением группировки.
- 🎯 Отбирайте период на входе. Не стройте график «за всё время»: задайте параметры начала и конца, чтобы запрос не поднимал лишние данные.
Если отчёт с диаграммой строится заметно дольше табличного варианта, дело обычно не в самой диаграмме, а в запросе. Сначала оптимизируйте запрос (отборы, индексы, агрегация), а диаграмму стройте уже по подготовленным итогам.
Для регулярной аналитики по большим объёмам данные иногда выгружают во внешнюю систему визуализации. Это оправдано, когда нужны интерактивные дашборды поверх разных источников; для отчёта внутри одной базы встроенной диаграммы 1С, как правило, достаточно.
Почему график не строится или выходит пустым
Частая ситуация: структуру с диаграммой собрали, отчёт сформировали — а на экране пусто или одна ось без столбцов. Причины почти всегда в данных, а не в самой диаграмме.
Проверьте по порядку:
- 🔸 Не задан ресурс. У диаграммы нет числового показателя — откладывать по высоте нечего. В схеме должен быть ресурс (
Сумма,Количество) с функцией агрегации, и он должен попадать в выбранные поля настройки. - 🔸 Пустые точки. Поле в области «Точки» не заполнено или по нему нет значений в выбранном периоде. Диаграмме не из чего строить категории.
- 🔸 Отбор отсекает всё. Слишком жёсткие условия в параметрах или отборе — период, по которому нет движений, закрытый склад, снятый с учёта контрагент.
- 🔸 Все значения — ноль. Данные есть, но показатель везде нулевой (например, обороты за будущий период). Столбцы формально строятся нулевой высоты и выглядят как пустая область.
- 🔸 Показатель не числовой. В ресурс по ошибке попало строковое или ссылочное поле — диаграмма такое не отрисует.
Быстрый способ локализовать проблему — временно переключить вывод с диаграммы на таблицу. Если и таблица пустая, дело в запросе и отборах, а не в диаграмме. Если таблица заполнена, а график нет — смотрите ресурс и поле точек.
Ещё одна типичная причина — у пользователя нет прав на данные отчёта. Тогда строки, к которым нет доступа, в выборку не попадают, и график может оказаться неполным или пустым. Это решается на уровне прав, а не настроек диаграммы.
Частые вопросы
Можно ли построить график в 1С без программирования?
Настройки, а собственный график собирается в системе компоновки данных мышью, без кода.