Отчеты и Аналитика · 9 мин
Как сделать отчет в конфигураторе 1С
Пошаговая инструкция по созданию отчета в конфигураторе 1С: объект метаданных, СКД, запрос, макет, настройки и типичные ошибки при разработке.
Отчет в 1С создается в конфигураторе как отдельный объект метаданных, который собирает данные из информационной базы и представляет их пользователю в виде таблицы или диаграммы. Основной современный способ — система компоновки данных (СКД): она позволяет получить гибкий отчет с отборами, группировками и настройками практически без программирования. Альтернатива — классический отчет на макете с программным выводом, который применяется для жестко фиксированных печатных форм.
Работа ведется в ветке «Отчеты» дерева конфигурации. Для простого аналитического отчета достаточно создать объект, написать запрос в схеме компоновки и настроить ресурсы — платформа сама построит форму, отборы и вывод результата. Ниже разобран полный цикл: от создания объекта до проверки результата и типичных ошибок.
Создание объекта «Отчет» в дереве конфигурации
Откройте конфигуратор, разверните ветку «Отчеты» в дереве конфигурации и нажмите кнопку добавления (или правой кнопкой — «Добавить»). Задайте имя отчета латиницей без пробелов, например ПродажиПоКонтрагентам, — по нему к отчету будут обращаться из кода. Синоним заполните понятным названием на русском: именно его увидит пользователь в интерфейсе.
На закладке «Подсистемы» отметьте разделы, где отчет должен отображаться, иначе пользователь его просто не найдет. Если отчет не должен попадать в командный интерфейс, снимите флажок видимости, но оставьте возможность вызова программно.
После создания объекта откроется конструктор основной формы. Для отчета на СКД форму генерировать необязательно: платформа построит ее автоматически. Это удобно на старте — форму можно добавить позже, когда понадобятся нестандартные элементы.
Схема компоновки данных: запрос и наборы данных
В форме отчета нажмите «Открыть схему компоновки данных» и перейдите на закладку «Наборы данных». Нажмите «Добавить» → «Добавить набор данных — запрос» и откройте конструктор запроса. Выберите таблицы: например, виртуальную таблицу Продажи.Обороты для аналитики оборотов или документы с движениями для детальных данных.
Перетащите нужные поля в список выборки, задайте связи таблиц, если их несколько, и при необходимости добавьте параметры виртуальной таблицы — период, организацию, склад. Конструктор сам сформирует текст запроса; вручную его можно доработать, например добавить вычисляемые поля или условия отбора.
На закладке «Связи наборов данных» настройте соединения, если наборов несколько. Для одного запроса этот шаг пропускается. Обратите внимание: поля-параметры виртуальных таблиц СКД передаст в запрос автоматически, если задать их в настройках, — это ключевая особенность, позволяющая не фильтровать данные после выборки.
Ресурсы, параметры и настройки отчета
На закладке «Ресурсы» отметьте числовые поля, которые должны суммироваться в итогах: количество, сумму, себестоимость. СКД по умолчанию предложит функцию Сумма — для большинства отчетов этого достаточно. Если ресурс не добавлен, итоги по полю считаться не будут.
На закладке «Параметры» проверьте автоматически созданные параметры периода. Для удобства пользователя задайте значения по умолчанию и ограничения: например, сделайте дату начала обязательной. На закладке «Настройки» сформируйте структуру отчета: добавьте группировку по контрагенту или номенклатуре, вложите детальные записи, выберите выводимые поля.
Чтобы пользователь мог менять отборы самостоятельно, перенесите нужные отборы и параметры в «пользовательские настройки» (режим редактирования — «Быстрый доступ»). Тогда они появятся прямо в форме отчета без открытия расширенных настроек.
- 1Создайте объект «Отчет» в дереве конфигурации, задайте имя и синоним
- 2Откройте схему компоновки данных и добавьте набор данных — запрос
- 3Постройте запрос в конструкторе: таблицы, поля, параметры виртуальных таблиц
- 4Укажите ресурсы для расчета итогов и проверьте параметры периода
- 5Настройте группировки, поля и пользовательские отборы на закладке «Настройки»
- 6Обновите конфигурацию базы данных и проверьте отчет в режиме предприятия
Отчет на макете: когда СКД не подходит
Классический вариант — макет табличного документа с областями и программный вывод в модуле объекта. Такой подход оправдан для строго фиксированных форм: актов, справок, документов с точным расположением полей, где группировки и отборы не нужны.
В конфигураторе откройте закладку «Макеты», создайте макет типа «Табличный документ», разметьте области (шапка, строка, подвал) и задайте параметры в ячейках. В модуле объекта отчета напишите процедуру формирования: выполните запрос, получите области макета, заполните параметры и выведите их в результирующий табличный документ.
СКД или макет
Подходит для аналитики: обороты, остатки, продажи. Гибкие отборы и группировки без кода; сложно добиться точного пиксельного макета.
Подходит для жестких печатных форм с фиксированной структурой. Полный контроль вывода, но каждое изменение требует правки кода.
Любой из вариантов, сохраненный как файл .erf. Подключается без изменения конфигурации — безопасно для типовых решений на поддержке.
Проверка результата и отладка
После сохранения схемы обновите конфигурацию базы данных (F7) и запустите режим предприятия. Откройте отчет, задайте период и нажмите «Сформировать». Сверьте итоги с исходными данными: например, сумму по отчету продаж — с оборотами по регистру за тот же период.
Если отчет пустой, проверьте период, параметры виртуальной таблицы и права пользователя на читаемые объекты. Если цифры завышены — ищите дублирование строк из-за соединения таблиц «один ко многим» без группировки. Для разбора сложных случаев полезно временно вывести детальные записи и сравнить их с документами.
Как проверить результат
Совпадает с оборотами регистра за тот же период
Расходится — проверяйте соединения таблиц и дубли строк
Данные строго в границах заданных дат
Попадают документы вне периода — параметры не переданы в виртуальную таблицу
Отчет формируется за секунды на рабочем объеме
Долгое ожидание — фильтрация выполняется после выборки вместо параметров запроса
Типичные ошибки и ограничения
Частая ошибка — отбор в настройках СКД вместо параметров виртуальной таблицы. Запрос выбирает все данные за все время, а фильтрует уже на этапе компоновки: на большой базе отчет работает медленно. Всегда переносите условия по периоду и организации в параметры виртуальной таблицы.
Вторая группа ошибок — работа с типовой конфигурацией. Прямая доработка объекта на поддержке усложняет обновления; безопаснее оформить разработку внешним отчетом или расширением. Также не забывайте про права: пользователь без доступа к регистру увидит пустой отчет без всяких сообщений об ошибке.
Часто задаваемые вопросы
Можно ли сделать отчет без программирования?
Да. Отчет на СКД с одним запросом, построенным в конструкторе, не требует написания кода: платформа сама создает форму, отборы и вывод результата. Код понадобится только для нестандартной обработки данных или собственной логики формирования.
Чем внешний отчет отличается от отчета в конфигурации?
Внешний отчет — это файл с расширением .erf, который подключается через «Файл — Открыть» или механизм дополнительных отчетов. Он не меняет конфигурацию, поэтому безопасен для типовых решений на поддержке, но доступен только там, где его подключили.
Почему отчет формируется очень долго?
Чаще всего причина в том, что условия заданы отбором СКД, а не параметрами виртуальной таблицы: запрос читает всю таблицу. Также проверьте индексирование полей в условиях и объем детальных записей без группировки.
Как добавить в отчет расшифровку по документам?
Добавьте в структуру настроек под группировкой уровень «Детальные записи» и включите в выбранные поля ссылку на документ. Пользователь сможет развернуть строку и увидеть первичные документы, из которых сложилась сумма.
Как вывести отчет на печать или сохранить в файл?
Результат СКД — табличный документ, который сохраняется через «Файл — Сохранить» в форматы MXL, Excel, PDF и печатается стандартной командой. Для автоматической отправки по почте или печати по кнопке потребуется программная доработка формы.
Что важно запомнить
Базовый путь: объект «Отчет» → схема компоновки данных → запрос → ресурсы и настройки → проверка в режиме предприятия. Условия передавайте параметрами виртуальных таблиц, типовую конфигурацию дорабатывайте через внешние отчеты или расширения, а перед изменениями делайте резервную копию.