Загрузка внешнего отчёта ERF в 1С 8.3: открыть разово, подключить навсегда, собрать из XML

· 10 мин

Содержание

Файл ERF загружается в 1С 8.3 двумя способами. Разово — через главное меню Файл → Открыть (или Ctrl+O): отчёт откроется до закрытия сеанса. Навсегда — через Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки: там файл кладут в базу, назначают раздел и пользователей.

Формат .erf — это внешний отчёт 1С:Предприятия. Варианты .erfxml и .erfxml.gz самой платформой не открываются: это выгрузка отчёта в XML и её архив. Из них сначала собирают обычный ERF, потом загружают. Ниже — оба способа, нужные права и разбор ошибок.

Что такое файл ERF и чем он отличается от других форматов 1С

ERF (External Report File) — отдельный файл с отчётом, который живёт вне конфигурации. Его пишут разработчики под конкретную задачу: нестандартная аналитика, сверка, выгрузка в Excel, отчёт для руководителя. Конфигурацию при этом не трогают, обновления типовой базы ставятся как обычно.

Рядом с ERF часто путают другие расширения. Коротко, что есть что:

РасширениеЧто внутриКак подключается
.erfВнешний отчётФайл → Открыть или дополнительные отчёты
.epfВнешняя обработка (печатная форма, загрузка, заполнение)Те же два способа
.cfeРасширение конфигурацииАдминистрирование → Печатные формы, отчеты и обработки → Расширения
.cfФайл конфигурации целикомТолько Конфигуратор
.dtВыгрузка всей информационной базыТолько Конфигуратор, монопольно
.erfxml, .xmlВыгрузка внешнего отчёта в файлы XMLСначала собрать в .erf

📌 Главное отличие ERF от EPF — назначение. Отчёт показывает данные, обработка их меняет. Технически подключаются они одинаково, поэтому всё, что сказано ниже про ERF, работает и для EPF.

Если вам прислали архив .zip или .rar, внутри почти всегда лежит готовый .erf и инструкция разработчика. Распакуйте его в папку без кириллицы и пробелов, например C:\1C_reports\, так проще искать файл в диалоге.

Подготовка к загрузке ERF: права, защита и версия платформы

Три вещи стоит проверить до того, как открывать файл. Иначе первая попытка закончится отказом, и непонятно, в чём дело.

Права пользователя

Открыть внешний отчёт может не каждый. В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3, УТ 11, КА 2, ERP) за это отвечает право интерактивного открытия внешних отчётов и обработок.

  • 🔑 У администратора оно есть по умолчанию.
  • 👤 Обычному бухгалтеру его выдают через профиль групп доступа «Открытие внешних отчетов и обработок».

Путь: Администрирование → Настройки пользователей и прав → Группы доступа. Создайте группу на этом профиле и добавьте в неё нужных сотрудников.

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

Защита от опасных действий

В 8.3 при открытии внешнего файла платформа показывает предупреждение о потенциально опасном действии. Это нормально: прочитайте имя файла и нажмите кнопку продолжения.

Предупреждение управляется флажком «Защита от опасных действий» в карточке пользователя. Снимать его ради удобства не советуем — он отсекает случайный запуск файлов из почты.

Версия платформы

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

Перед стартом пройдите по короткому списку:

Перед загрузкой ERF
Выполнено: 0 / 5

Способ 1. Как открыть ERF в 1С разово через меню «Файл»

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

  1. Запустите 1С:Предприятие в режиме пользователя (не Конфигуратор).
  2. Откройте главное меню — кнопка с тремя полосками в левом верхнем углу или Ctrl+O.
  3. Выберите Файл → Открыть.
  4. В диалоге укажите тип файлов «Все файлы» или «Внешний отчёт», найдите свой .erf.
  5. Подтвердите предупреждение безопасности.
  6. Откроется форма отчёта. Заполните период и отборы, нажмите «Сформировать».

📎 Файл можно просто перетащить мышкой из проводника в окно 1С — эффект тот же.

Минусы способа:

  • ⏳ отчёт закрывается вместе с сеансом, завтра его придётся искать заново;
  • 🔒 каждому пользователю нужно право открытия внешних файлов;
  • 🧩 в варианты отчётов и рассылки такой отчёт не встроишь.

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

Способ 2. Загрузка ERF в 1С через дополнительные отчёты

Это основной вариант для постоянной работы. Отчёт хранится в самой базе, переносится вместе с ней в выгрузке .dt и доступен с любого рабочего места.

Включите функциональность

  1. Откройте Администрирование → Печатные формы, отчеты и обработки.
  2. Установите флажок «Дополнительные отчеты и обработки».
  3. Рядом появится ссылка на одноимённый список — перейдите по ней.

Загрузите файл

  1. В списке нажмите «Создать».
  2. Платформа предложит выбрать файл — укажите свой .erf, подтвердите предупреждение.
  3. Карточка заполнится автоматически: наименование, вид (дополнительный или контекстный отчёт), версия, команды.
  4. Проверьте публикацию: значение «Используется». «Отключен» оставит файл в базе, но спрячет его.

Настройте размещение и доступ

  1. На вкладке «Размещение» нажмите «Указать разделы» и отметьте, где показывать отчёт: например, «Продажи» или «Руководителю».
  2. В табличной части команд нажмите «Быстрый доступ» и выберите пользователей.
  3. Нажмите «Записать и закрыть».

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

Обновление отчёта новой версией

Когда разработчик присылает исправленный ERF, новую карточку не создавайте. Откройте существующую и в меню «Еще» выберите загрузку из файла. Настройки размещения и пользователей сохранятся.

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

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

СитуацияСпособ
Нужно один раз посмотреть данныеФайл → Открыть
Отчётом пользуются каждый деньДополнительные отчёты
Отчёт нужен 10 сотрудникамДополнительные отчёты + быстрый доступ
Проверяете файл от нового подрядчикаСначала копия базы, затем Файл → Открыть
База в облаке у провайдераДополнительные отчёты, с учётом правил провайдера

Файлы .erfxml и .erfxml.gz: как получить из них обычный ERF

Расширения .erfxml и .erfxml.gz платформа 1С не знает, и двойной щелчок по ним ничего не даст. Чаще всего за ними стоит одно из двух:

  • 📂 XML-выгрузка внешнего отчёта. Разработчики хранят отчёты в Git в виде набора XML-файлов: корневой файл с описанием и папка с модулями, формами, макетами. Кто-то переименовывает корневой файл в .erfxml, чтобы отличать его от прочих XML.
  • 🗜️ Архив gzip. Окончание .gz означает, что файл просто сжат. Это не особый формат 1С.

Распаковка .gz

На Windows архив открывает 7-Zip: щёлкните правой кнопкой → 7-Zip → «Распаковать здесь». В Linux и macOS хватит одной команды:

gunzip -k report.erfxml.gz

Ключ -k оставляет исходный архив на месте.

Посмотрите, что получилось. Если внутри обычный .erf — загружайте любым способом выше. Если XML-файлы — нужна сборка.

Сборка ERF из XML в Конфигураторе

  1. Запустите Конфигуратор любой базы (подойдёт пустая файловая).
  2. Откройте Файл → Открыть и выберите корневой XML-файл отчёта. Если пункт не принимает XML, используйте команду загрузки внешнего отчёта из файлов в меню «Файл».
  3. Когда отчёт откроется в дереве, выполните Файл → Сохранить как и выберите тип «Внешний отчет (*.erf)».
  4. Готовый ERF загружайте в рабочую базу.

Без интерфейса ту же сборку делает пакетный режим Конфигуратора:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F "C:\1C_bases\empty" /LoadExternalDataProcessorOrReportFromFiles "C:\src\Report.xml" "C:\out\Report.erf" /Out "C:\out\log.txt"

Замените 8.3.xx.xxxx на номер вашей платформы. Обратная операция — /DumpExternalDataProcessorOrReportToFiles: она раскладывает ERF на XML.

Версия платформы, в которой собирают ERF, должна быть не выше той, что стоит в рабочей базе. Иначе получите файл, который не откроется у пользователей.

Ошибки при загрузке ERF и как их устранить

Большинство отказов укладывается в пять сценариев. Выберите свой симптом:

Диагностика: выберите симптом

Не запускайте ERF неизвестного происхождения в рабочей базе. Отчёт может содержать любой код, в том числе удаляющий данные. Сначала — на копии.

Пакетная загрузка ERF и автоматизация

Когда отчётов десятки или баз несколько, руками это долго. Вот что можно автоматизировать.

Сборка многих ERF из исходников

Если отчёты хранятся в Git как XML, соберите их циклом. Пример bat-файла, который превращает каждую папку с исходниками в ERF:

@echo off
set V8="C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe"
set BASE=C:\1C_bases\empty
for /d %%D in (C:\src\reports\*) do (
  %V8% DESIGNER /F "%BASE%" /LoadExternalDataProcessorOrReportFromFiles "%%D\%%~nxD.xml" "C:\out\%%~nxD.erf" /Out "C:\out\%%~nxD.log"
)

Скрипт ожидает, что в каждой папке лежит корневой XML с тем же именем, что у папки. Логи по каждому отчёту пишутся в отдельный файл — так проще найти, какой не собрался.

Подключение ERF из кода

Разработчики подключают внешний отчёт программно. В клиент-серверном режиме файл сначала помещают во временное хранилище, затем подключают на сервере:

// Сервер: АдресВХранилище получен на клиенте через ПоместитьФайл / НачатьПомещениеФайла
ИмяОтчета = ВнешниеОтчеты.Подключить(АдресВХранилище, , Истина);
// Третий параметр — безопасный режим, Истина ограничивает доступ к файлам и COM

Затем форма открывается по имени "ВнешнийОтчет." + ИмяОтчета + ".Форма". Подключение действует до конца сеанса.

Тиражирование по нескольким базам

Для группы баз удобно держать отчёт в одной эталонной базе и переносить вместе с выгрузкой справочника дополнительных отчётов или через обмен. Если базы работают в связке РИБ, карточка дополнительного отчёта, как правило, уходит в подчинённые узлы вместе с обычным обменом.

ЗадачаИнструментКто делает
Собрать 20 отчётов из XMLbat + пакетный КонфигураторРазработчик
Открыть отчёт из своей обработкиВнешниеОтчеты.ПодключитьРазработчик
Раздать отчёт пяти филиаламДополнительные отчёты + обменАдминистратор
Один отчёт для одного бухгалтераДополнительные отчёты, быстрый доступАдминистратор

Частые вопросы про загрузку ERF

Нужно ли выгонять пользователей из базы, чтобы загрузить ERF?
Нет. Внешний отчёт не меняет конфигурацию, монопольный режим для него не нужен. Коллеги продолжают работать, пока вы загружаете файл.
Отчёт из ERF работает в облаке 1С:Фреш?
Да, но только после загрузки через дополнительные отчёты и проверки файла провайдером. Открыть произвольный ERF через меню «Файл» в облаке не получится.
Чем открыть ERF без 1С, чтобы посмотреть код?
Без платформы — никак, это двоичный контейнер. Откройте файл в Конфигураторе любой пустой базы или разложите на XML командой выгрузки.
Сохранится ли загруженный отчёт после обновления конфигурации?
Да. Дополнительные отчёты хранятся в данных базы, обновление их не стирает. Но если в релизе изменились объекты, на которые ссылается код, отчёт может перестать формироваться.
Почему на другом компьютере отчёт пропал?
Потому что его открывали через Файл → Открыть: так он живёт только в одном сеансе. Подключите его через дополнительные отчёты — тогда он будет у всех.