Внешняя обработка .epf: как запустить, изменить и сохранить
Содержание
Файл EPF открывают двумя способами, и оба — средствами самой платформы 1С:Предприятие 8. Чтобы просто запустить обработку, хватит режима Предприятия: Главное меню → Файл → Открыть. Чтобы редактировать EPF файл 1С — менять форму, код или реквизиты, — нужен Конфигуратор: там тот же пункт Файл → Открыть показывает обработку целиком, как объект метаданных.
Блокнот, архиватор или «универсальный просмотрщик» с EPF не справятся. Внутри — двоичный контейнер 1С, а не текст. Ниже — по каждому способу: что он умеет, где ограничения и что делать, если файл не открывается.
Чем открыть EPF: сравнение способов
EPF — это внешняя обработка (External Processor File). Родственный формат ERF — внешний отчёт, с ним всё работает так же. Обработка живёт отдельно от базы: её можно передать по почте, запустить в любой подходящей базе и не трогать при этом основную конфигурацию.
| Способ | Что можно | Чего нельзя | Кому подходит |
|---|---|---|---|
| Режим 1С:Предприятие | Запустить, заполнить форму, выполнить | Увидеть или изменить код | Бухгалтеру, пользователю |
| Конфигуратор | Открыть структуру, править форму, модули, макеты, сохранить | — (кроме модулей под паролем) | Программисту, администратору |
| 1C:Enterprise Development Tools | Вести обработку как проект, хранить в Git | Работать без установленной платформы | Команде разработчиков |
| Выгрузка в XML-файлы | Смотреть код и форму как текст, сравнивать версии | Запустить без обратной сборки в EPF | Для ревью и контроля версий |
| Текстовый редактор напрямую | Ничего полезного | Всё | Никому |
💡 Если нужно лишь понять, что делает обработка, а не менять её, всё равно откройте её в Конфигураторе. Это единственный способ увидеть код до запуска в рабочей базе.
Как открыть EPF файл в режиме 1С:Предприятие
Это вариант «просто пользоваться». Обработка запускается, показывает свою форму, но код и устройство скрыты.
Разовый запуск через меню
- Откройте базу в режиме 1С:Предприятие.
- Нажмите кнопку главного меню (значок с полосками в левом верхнем углу) и выберите
Файл → Открыть. Или нажмитеCtrl+O. - Укажите файл
.epfна диске. - Если платформа покажет предупреждение о безопасности — прочитайте его и подтвердите, только если доверяете источнику файла.
- Откроется форма обработки. Дальше работайте по инструкции её автора.
Пункт Файл → Открыть виден не всем. Пользователю нужно право «Интерактивное открытие внешних обработок». В типовых конфигурациях оно есть у полных прав и администратора, у рядового бухгалтера его часто нет — и это правильно.
Постоянное подключение в типовых конфигурациях
В БП 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на БСП обработку удобнее зарегистрировать в базе один раз:
- Откройте
Администрирование → Печатные формы, отчеты и обработки. - Включите флажок «Дополнительные отчеты и обработки», если он выключен.
- Перейдите по ссылке «Дополнительные отчеты и обработки» и создайте новый элемент.
- Выберите файл EPF. Программа прочитает его сведения: назначение, вид обработки, команды.
- Настройте размещение — в каком разделе или в каком документе появится команда — и запишите.
После этого обработка хранится внутри базы. Файл на диске больше не нужен, а права на неё раздаются как на обычный объект.
Так подключаются только обработки, написанные под БСП: в их модуле объекта есть функция СведенияОВнешнейОбработке(). Обычную «самописную» обработку без неё справочник не примет — для таких остаётся Файл → Открыть.
Как открыть EPF в Конфигураторе для редактирования
Для правки нужен Конфигуратор. Важная деталь: внешняя обработка от базы не зависит, но сам Конфигуратор без базы не запускается. Подойдёт любая — рабочая, тестовая или пустая, созданная за минуту.
Пошагово
- Запустите 1С и выберите базу в списке.
- Нажмите «Конфигуратор».
- В Конфигураторе выберите
Файл → Открытьи укажите.epf. - Откроется окно с деревом обработки.
Открывать конфигурацию базы при этом не нужно. Обработка — отдельный объект, и окно с ней работает само по себе.
Что видно в дереве обработки
- 📋 Реквизиты — поля, которые хранит обработка (даты, ссылки, флажки).
- 📑 Табличные части — таблицы с колонками.
- 🖼️ Формы — основная и дополнительные; у каждой своя форма-редактор и модуль формы.
- 📄 Макеты — табличные документы, двоичные данные, схемы компоновки.
- 🧩 Модуль объекта — его открывают из контекстного меню корневого элемента дерева.
Отдельная развилка — тип форм. Обработка с управляемыми формами работает в тонком клиенте и веб-клиенте. Обработка с обычными формами в тонком клиенте не откроется: нужен толстый клиент. Это частая причина жалобы «у меня ничего не появляется» в БП 3.0.
Если модуль под паролем
Автор мог защитить модули паролем. Тогда при попытке открыть модуль Конфигуратор запросит пароль, и без него код не показывается. Форму и реквизиты при этом обычно видно, а логику — нет.
Обходить пароль на чужой обработке не стоит — это нарушает права автора, а в платной разработке ещё и условия лицензии. Легальный путь один: запросить у разработчика версию без пароля или доработку.
Редактирование и сохранение внешней обработки
Внести изменения
Правка идёт так же, как в конфигурации:
- реквизит или табличную часть добавляют через контекстное меню нужной ветки дерева;
- форму меняют в редакторе формы: перетаскивают реквизиты на элементы, настраивают свойства;
- код пишут в модуле формы или в модуле объекта;
- печатную форму правят в макете — двойной щелчок по нему открывает табличный документ.
Перед сохранением проверьте синтаксис: Ctrl+F7 в открытом модуле. Ошибку лучше поймать здесь, а не в форме у пользователя.
Сохранить
| Действие | Команда | Когда |
|---|---|---|
| Записать в тот же файл | Файл → Сохранить или Ctrl+S | Обычная правка |
| Записать новой копией | Файл → Сохранить как | Хотите оставить оригинал |
💡 Перед первой правкой сделайте копию исходного файла с датой в имени, например Загрузка_прайса_2024-03-15.epf. Откат тогда займёт секунды.
Проверить изменения в Предприятии
Тут три приёма, которые экономят время.
Повторный запуск. Обработка, открытая через Файл → Открыть, перечитывается при каждом открытии. Сохранили в Конфигураторе — закройте форму в Предприятии и откройте файл снова.
Обновление в справочнике. Если обработка зарегистрирована в «Дополнительных отчетах и обработках», новая версия сама в базу не попадёт. Откройте элемент справочника, загрузите в него файл заново и запишите.
Отладка. Запустите Предприятие из Конфигуратора командой Отладка → Начать отладку, поставьте точку останова в модуле открытой обработки (F9) и откройте тот же EPF в Предприятии. Выполнение остановится на точке, и можно смотреть значения переменных. Главное условие — в Конфигураторе и в Предприятии должен быть один и тот же файл, а не его копия.
Можно ли открыть 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 они не открываются и не конвертируются — их переписывают заново.
Справка → О программе) и у автора; обновите платформу или попросите пересохранить.Безопасность при работе с внешними обработками
Внешняя обработка — это программа. Она выполняется с правами того, кто её запустил, и может сделать в базе всё, что разрешено этому пользователю: изменить документы, удалить данные, выгрузить их во внешний файл или на сайт.
Защита на стороне платформы
- 🛡️ Предупреждение при открытии. Для пользователей с включённой защитой от опасных действий платформа перед запуском внешнего файла показывает предупреждение и требует подтверждения. Свойство «Защита от опасных действий» настраивается в карточке пользователя информационной базы.
- 🔒 Право на открытие. Без права «Интерактивное открытие внешних обработок» пользователь вообще не запустит файл через меню.
- 🧰 Безопасный режим. В справочнике дополнительных обработок БСП есть настройка подключения в безопасном режиме: обработка не сможет работать с файлами, внешними компонентами и привилегированными операциями без явного разрешения администратора.
Правила для себя
- Не запускайте EPF, присланный незнакомым отправителем, даже если письмо «от 1С» или «от налоговой».
- Сначала откройте файл в Конфигураторе и пробегите глазами модули. Насторожить должны обращения к
COMObject,HTTPСоединение,УдалитьФайлы,ЗапуститьПриложениебез понятной причины. - Первый запуск — на копии базы. Особенно для обработок, которые массово меняют или удаляют данные.
- Храните одобренные обработки в справочнике дополнительных обработок, а не на рабочих столах сотрудников. Так понятно, какая версия в работе и у кого к ней доступ.
Отключать защиту от опасных действий «чтобы не мешало предупреждение» стоит только у администраторов и разработчиков. Рядовым пользователям она закрывает самый простой путь заражения базы.
Частые вопросы
Чем отличается EPF от ERF?
Файл → Открыть в Предприятии или Конфигураторе.Можно ли превратить внешнюю обработку во встроенную?
Нужна ли лицензия, чтобы открыть EPF в Конфигураторе?
Почему после правки в Конфигураторе в базе работает старая версия?
Можно ли открыть EPF на Linux?
Файл → Открыть и выбор файла.