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