Внешняя обработка .epf: как запустить, изменить и сохранить

· 10 мин

Содержание

Файл EPF открывают двумя способами, и оба — средствами самой платформы 1С:Предприятие 8. Чтобы просто запустить обработку, хватит режима Предприятия: Главное меню → Файл → Открыть. Чтобы редактировать EPF файл 1С — менять форму, код или реквизиты, — нужен Конфигуратор: там тот же пункт Файл → Открыть показывает обработку целиком, как объект метаданных.

Блокнот, архиватор или «универсальный просмотрщик» с EPF не справятся. Внутри — двоичный контейнер 1С, а не текст. Ниже — по каждому способу: что он умеет, где ограничения и что делать, если файл не открывается.

Чем открыть EPF: сравнение способов

EPF — это внешняя обработка (External Processor File). Родственный формат ERF — внешний отчёт, с ним всё работает так же. Обработка живёт отдельно от базы: её можно передать по почте, запустить в любой подходящей базе и не трогать при этом основную конфигурацию.

СпособЧто можноЧего нельзяКому подходит
Режим 1С:ПредприятиеЗапустить, заполнить форму, выполнитьУвидеть или изменить кодБухгалтеру, пользователю
КонфигураторОткрыть структуру, править форму, модули, макеты, сохранить— (кроме модулей под паролем)Программисту, администратору
1C:Enterprise Development ToolsВести обработку как проект, хранить в GitРаботать без установленной платформыКоманде разработчиков
Выгрузка в XML-файлыСмотреть код и форму как текст, сравнивать версииЗапустить без обратной сборки в EPFДля ревью и контроля версий
Текстовый редактор напрямуюНичего полезногоВсёНикому

💡 Если нужно лишь понять, что делает обработка, а не менять её, всё равно откройте её в Конфигураторе. Это единственный способ увидеть код до запуска в рабочей базе.

Как открыть EPF файл в режиме 1С:Предприятие

Это вариант «просто пользоваться». Обработка запускается, показывает свою форму, но код и устройство скрыты.

Разовый запуск через меню

  1. Откройте базу в режиме 1С:Предприятие.
  2. Нажмите кнопку главного меню (значок с полосками в левом верхнем углу) и выберите Файл → Открыть. Или нажмите Ctrl+O.
  3. Укажите файл .epf на диске.
  4. Если платформа покажет предупреждение о безопасности — прочитайте его и подтвердите, только если доверяете источнику файла.
  5. Откроется форма обработки. Дальше работайте по инструкции её автора.

Пункт Файл → Открыть виден не всем. Пользователю нужно право «Интерактивное открытие внешних обработок». В типовых конфигурациях оно есть у полных прав и администратора, у рядового бухгалтера его часто нет — и это правильно.

Постоянное подключение в типовых конфигурациях

В БП 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на БСП обработку удобнее зарегистрировать в базе один раз:

  1. Откройте Администрирование → Печатные формы, отчеты и обработки.
  2. Включите флажок «Дополнительные отчеты и обработки», если он выключен.
  3. Перейдите по ссылке «Дополнительные отчеты и обработки» и создайте новый элемент.
  4. Выберите файл EPF. Программа прочитает его сведения: назначение, вид обработки, команды.
  5. Настройте размещение — в каком разделе или в каком документе появится команда — и запишите.

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

Так подключаются только обработки, написанные под БСП: в их модуле объекта есть функция СведенияОВнешнейОбработке(). Обычную «самописную» обработку без неё справочник не примет — для таких остаётся Файл → Открыть.

Как открыть EPF в Конфигураторе для редактирования

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

Пошагово

  1. Запустите 1С и выберите базу в списке.
  2. Нажмите «Конфигуратор».
  3. В Конфигураторе выберите Файл → Открыть и укажите .epf.
  4. Откроется окно с деревом обработки.

Открывать конфигурацию базы при этом не нужно. Обработка — отдельный объект, и окно с ней работает само по себе.

Что видно в дереве обработки

  • 📋 Реквизиты — поля, которые хранит обработка (даты, ссылки, флажки).
  • 📑 Табличные части — таблицы с колонками.
  • 🖼️ Формы — основная и дополнительные; у каждой своя форма-редактор и модуль формы.
  • 📄 Макеты — табличные документы, двоичные данные, схемы компоновки.
  • 🧩 Модуль объекта — его открывают из контекстного меню корневого элемента дерева.

Отдельная развилка — тип форм. Обработка с управляемыми формами работает в тонком клиенте и веб-клиенте. Обработка с обычными формами в тонком клиенте не откроется: нужен толстый клиент. Это частая причина жалобы «у меня ничего не появляется» в БП 3.0.

Если модуль под паролем

Автор мог защитить модули паролем. Тогда при попытке открыть модуль Конфигуратор запросит пароль, и без него код не показывается. Форму и реквизиты при этом обычно видно, а логику — нет.

Обходить пароль на чужой обработке не стоит — это нарушает права автора, а в платной разработке ещё и условия лицензии. Легальный путь один: запросить у разработчика версию без пароля или доработку.

Редактирование и сохранение внешней обработки

Внести изменения

Правка идёт так же, как в конфигурации:

  • реквизит или табличную часть добавляют через контекстное меню нужной ветки дерева;
  • форму меняют в редакторе формы: перетаскивают реквизиты на элементы, настраивают свойства;
  • код пишут в модуле формы или в модуле объекта;
  • печатную форму правят в макете — двойной щелчок по нему открывает табличный документ.

Перед сохранением проверьте синтаксис: Ctrl+F7 в открытом модуле. Ошибку лучше поймать здесь, а не в форме у пользователя.

Сохранить

ДействиеКомандаКогда
Записать в тот же файлФайл → Сохранить или Ctrl+SОбычная правка
Записать новой копиейФайл → Сохранить какХотите оставить оригинал

💡 Перед первой правкой сделайте копию исходного файла с датой в имени, например Загрузка_прайса_2024-03-15.epf. Откат тогда займёт секунды.

Проверить изменения в Предприятии

Тут три приёма, которые экономят время.

Повторный запуск. Обработка, открытая через Файл → Открыть, перечитывается при каждом открытии. Сохранили в Конфигураторе — закройте форму в Предприятии и откройте файл снова.

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

Отладка. Запустите Предприятие из Конфигуратора командой Отладка → Начать отладку, поставьте точку останова в модуле открытой обработки (F9) и откройте тот же EPF в Предприятии. Выполнение остановится на точке, и можно смотреть значения переменных. Главное условие — в Конфигураторе и в Предприятии должен быть один и тот же файл, а не его копия.

Перед передачей обработки пользователям
Выполнено: 0 / 5

Можно ли открыть EPF без 1С: текстовые редакторы и утилиты

Коротко: прочитать содержимое без платформы нельзя, а вот превратить EPF в текстовые файлы — можно.

Почему не открывается в Блокноте

EPF хранится в собственном контейнерном формате 1С. В текстовом редакторе вы увидите набор нечитаемых символов. Сохранить файл из Блокнота — гарантированно его испортить.

Архиваторы тоже не помогут: это не ZIP, хотя внутри часть данных и сжата.

Выгрузка в XML средствами платформы

Платформа 8.3 умеет разбирать внешнюю обработку на XML-файлы и собирать обратно. Получается набор файлов: описание объекта, формы, модули в виде .bsl. Их открывает любой редактор — VS Code, Notepad++ — и их удобно хранить в Git и сравнивать между версиями.

Из командной строки это делается пакетным запуском Конфигуратора:

rem Разобрать EPF на файлы
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F "D:\Bases\Empty" ^
  /DumpExternalDataProcessorOrReportToFiles "D:\src\Obrabotka\Obrabotka.xml" "D:\in\Obrabotka.epf"

rem Собрать EPF из файлов
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F "D:\Bases\Empty" ^
  /LoadExternalDataProcessorOrReportFromFiles "D:\src\Obrabotka\Obrabotka.xml" "D:\out\Obrabotka.epf"

Здесь /F — путь к любой файловой базе: она нужна только для запуска Конфигуратора. Вместо <версия> подставьте папку установленной платформы, например 8.3.24.1548.

То же самое доступно и в интерфейсе: в окне открытой обработки, в контекстном меню корневого элемента дерева, есть команды выгрузки в файлы и загрузки из файлов.

Редактировать XML руками стоит только там, где вы понимаете формат: код модулей — смело, описание формы — осторожно. Одна неверная ссылка в XML формы, и обработка не соберётся.

1C:Enterprise Development Tools

EDT — среда разработки 1С на базе Eclipse. В ней внешние обработки ведут как отдельный проект: импортируют EPF, правят в удобном редакторе с подсказками и проверками, экспортируют обратно в файл. Для одной правки EDT избыточна, для постоянной разработки с Git — удобнее Конфигуратора.

Сторонние распаковщики

Есть открытые утилиты, которые разбирают контейнеры 1С без платформы, — самая известная v8unpack. Их используют для анализа и автоматизации. Помните про риски: формат им известен по исследованию, а не по документации, и на свежих версиях платформы результат не гарантирован. Для правки и обратной сборки надёжнее штатная выгрузка.

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

Главное правило: обработка, сохранённая в более новой платформе, может не открыться в более старой. Обратное, как правило, работает: файл из старой версии 8.3 открывается в новой.

Типичные сценарии:

  • 🔢 Разные платформы у разработчика и клиента. Обработку сохранили в 8.3.24, а у клиента 8.3.18 — файл может не прочитаться. Решение: сохранять в платформе с номером не выше, чем у пользователя, либо обновить платформу у пользователя.
  • 🧱 Формы не того типа. Обычные формы не работают в тонком клиенте и вебе. Управляемые — работают везде на 8.3.
  • 🔗 Обращение к объектам конфигурации. Код обработки может ссылаться на справочники, документы и общие модули конкретной базы. В базе, где таких объектов нет, обработка откроется, но упадёт с ошибкой при выполнении.
  • 🗂️ Файлы 7.7. В 1С 7.7 внешние обработки имели расширение ERT. В 8.3 они не открываются и не конвертируются — их переписывают заново.
Диагностика: выберите симптом

Безопасность при работе с внешними обработками

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

Защита на стороне платформы

  • 🛡️ Предупреждение при открытии. Для пользователей с включённой защитой от опасных действий платформа перед запуском внешнего файла показывает предупреждение и требует подтверждения. Свойство «Защита от опасных действий» настраивается в карточке пользователя информационной базы.
  • 🔒 Право на открытие. Без права «Интерактивное открытие внешних обработок» пользователь вообще не запустит файл через меню.
  • 🧰 Безопасный режим. В справочнике дополнительных обработок БСП есть настройка подключения в безопасном режиме: обработка не сможет работать с файлами, внешними компонентами и привилегированными операциями без явного разрешения администратора.

Правила для себя

  1. Не запускайте EPF, присланный незнакомым отправителем, даже если письмо «от 1С» или «от налоговой».
  2. Сначала откройте файл в Конфигураторе и пробегите глазами модули. Насторожить должны обращения к COMObject, HTTPСоединение, УдалитьФайлы, ЗапуститьПриложение без понятной причины.
  3. Первый запуск — на копии базы. Особенно для обработок, которые массово меняют или удаляют данные.
  4. Храните одобренные обработки в справочнике дополнительных обработок, а не на рабочих столах сотрудников. Так понятно, какая версия в работе и у кого к ней доступ.

Отключать защиту от опасных действий «чтобы не мешало предупреждение» стоит только у администраторов и разработчиков. Рядовым пользователям она закрывает самый простой путь заражения базы.

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

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