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

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

Как в 1С сформировать многографную карточку

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

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

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

Ниже разобраны все три подхода с конкретными действиями, проверками результата и типичными ошибками. Инструкции применимы к типовым конфигурациям на управляемых формах (1С:ERP, «Управление торговлей», «Комплексная автоматизация», «Бухгалтерия предприятия»), где доступен механизм диаграмм и СКД.

Что понадобится перед началом работы

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

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

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

Нужен разовый анализОтчёт на СКД

Достаточно внешнего отчёта без изменения конфигурации

Карточка внутри справочникаДоработка формы

Потребуется расширение конфигурации и программный код

Нужен печатный документВнешняя печатная форма

Графики вставляются в табличный макет как рисунки

Нет прав на конфигураторТолько СКД и внешние отчёты

Проверьте доступ к пункту «Дополнительные отчёты и обработки»

Способ 1: отчёт на СКД с несколькими диаграммами

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

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

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

Порядок действий для отчёта СКД
  1. 1
    Создайте внешний отчёт и откройте схему компоновки данных
  2. 2
    Напишите запрос с показателями: период, объект, числовые ресурсы
  3. 3
    На закладке «Ресурсы» отметьте все числовые поля
  4. 4
    В «Настройках» добавьте несколько диаграмм и задайте каждой тип, серии и точки
  5. 5
    Добавьте отбор по объекту и вынесите его в быстрые настройки
  6. 6
    Сохраните, подключите как дополнительный отчёт и сформируйте по тестовому объекту

Как разместить графики компактно

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

Способ 2: диаграммы на форме объекта

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

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

bsl
Процедура ЗаполнитьДиаграммуПродаж()
    ДиаграммаПродажи.Очистить();
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ Продажи.Период КАК Период, СУММА(Продажи.Сумма) КАК Сумма ИЗ РегистрНакопления.Продажи.Обороты(, , Месяц, Контрагент = &Контрагент) КАК Продажи СГРУППИРОВАТЬ ПО Продажи.Период";
    Запрос.УстановитьПараметр("Контрагент", Объект.Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    Серия = ДиаграммаПродажи.Серии.Добавить("Продажи");
    Пока Выборка.Следующий() Цикл
        Точка = ДиаграммаПродажи.Точки.Добавить(Формат(Выборка.Период, "ДФ=МММ"));
        ДиаграммаПродажи.УстановитьЗначение(Точка, Серия, Выборка.Сумма);
    КонецЦикла;
КонецПроцедуры

Учтите ограничение: диаграмма на форме не пересчитывается автоматически при изменении данных другими пользователями. Если нужна актуальность, добавьте кнопку «Обновить» или обновляйте графики при повторном открытии карточки. Для больших объёмов данных запрос стоит ограничить периодом, иначе открытие формы будет замедляться.

Способ 3: многографная карточка для печати

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

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

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

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

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

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

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

Отображение графиков
Норма

Все диаграммы отрисованы, есть подписи серий и точек

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

Пустая область или одна диаграмма вместо нескольких

Совпадение цифр
Норма

Итоги на графиках равны данным исходных отчётов

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

Суммы завышены или задвоены — ошибка в соединении таблиц запроса

Отбор по объекту
Норма

При смене контрагента графики перестраиваются

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

Графики одинаковые для любого объекта — отбор не применён

Скорость формирования
Норма

Карточка строится за несколько секунд

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

Длительное ожидание — запрос без ограничения периода

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

Какой способ выбрать

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

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

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

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

Итог

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

Многографная карточка строится тремя путями: отчёт СКД с несколькими диаграммами, диаграммы на форме объекта через расширение, печатная форма с рисунками-диаграммами в макете. Ключевые условия успеха: отмеченные ресурсы, корректный запрос без дублей, отбор по объекту и проверка итогов по эталонным отчётам.

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

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

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

Почему диаграмма в отчёте СКД выводится пустой?

Чаще всего не отмечены числовые ресурсы на закладке «Ресурсы» схемы компоновки или не заданы серии и точки у самой диаграммы. Также проверьте, что запрос возвращает данные за выбранный период и что отбор не отсекает все строки.

Как расположить графики рядом, а не друг под другом?

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

Будет ли карточка работать после обновления конфигурации?

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

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

Да. В СКД добавьте несколько наборов данных-запросов и свяжите их по объекту анализа, либо соберите единый запрос с соединением таблиц. Каждой диаграмме назначаются свои ресурсы из общего результата.

Как ускорить формирование карточки на большой базе?

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