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