К статье
Практический материал

Разработка и Конфигурация · 11 мин

EPF-расширение в 1С: что это и как работать с внешними обработками

EPF — это файл внешней обработки 1С. Разбираем, что это за расширение, как открыть, подключить и создать EPF-файл, чем он отличается от ERF и расширения конфигурации.

EPF — это расширение файла внешней обработки (External Processing File) в платформе 1С:Предприятие. Такой файл содержит программный код, формы, макеты и алгоритмы, которые выполняются поверх основной конфигурации без её изменения. Пользователь может запустить EPF-обработку в режиме предприятия, а разработчик — открыть и отредактировать её в конфигураторе.

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

Важно не путать EPF с расширением конфигурации (файл CFE) — это разные механизмы с разными возможностями и ограничениями. Ниже разбираем, что именно хранится в EPF-файле, как его открыть, подключить, создать собственную обработку и какие риски стоит учитывать при запуске чужих файлов.

Что хранится внутри EPF-файла

EPF-файл — это контейнер в собственном бинарном формате платформы 1С. Внутри него находятся: модуль объекта с программным кодом на встроенном языке, управляемые или обычные формы, макеты (табличные документы, схемы компоновки данных, двоичные данные), а также описание реквизитов и табличных частей обработки.

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

Чем EPF отличается от ERF и расширения конфигурации

В экосистеме 1С легко перепутать три похожих механизма: внешние обработки (EPF), внешние отчёты (ERF) и расширения конфигурации (CFE). Различия принципиальны: обработка ориентирована на действия с данными, отчёт — на вывод информации, а расширение изменяет поведение самой конфигурации, добавляя или переопределяя объекты.

ПараметрEPF (обработка)ERF (отчёт)CFE (расширение)
Основное назначениеДействия с данными, сервисные операцииФормирование и вывод отчётовДоработка конфигурации без снятия с поддержки
Изменяет конфигурациюНетНетДа, через механизм расширений
Схема компоновки данныхОпциональноОсновной инструментЗависит от объектов
Хранение в базеФайл или справочник доп. обработокФайл или справочник доп. отчётовВнутри информационной базы
ЗапускВручную или по расписаниюВручную или по расписаниюАвтоматически при старте сеанса

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

Как открыть EPF-файл в 1С

Самый быстрый способ запустить внешнюю обработку — открыть её напрямую в режиме 1С:Предприятие. Для этого в главном меню выберите «Файл → Открыть» и укажите путь к EPF-файлу. Платформа выполнит обработку в текущем сеансе с правами текущего пользователя.

Для просмотра и редактирования кода файл открывают в конфигураторе: «Файл → Открыть» с выбором того же EPF-файла. При этом конфигурация базы может быть любой — внешняя обработка не привязана к конкретной базе, хотя её код может обращаться к объектам конкретной конфигурации и без них работать не будет.

Как запустить EPF-обработку
  1. 1
    Сохраните EPF-файл на диск в доступную папку
  2. 2
    Запустите 1С в режиме предприятия под пользователем с достаточными правами
  3. 3
    Откройте меню «Файл → Открыть» и выберите файл
  4. 4
    Подтвердите открытие, если платформа спросит о доверии
  5. 5
    Проверьте результат работы обработки на тестовых данных

Если обработка запускается, но выдаёт ошибки об отсутствующих объектах метаданных — значит, она написана под другую конфигурацию или другую версию. Это нормальная ситуация: EPF-файлы почти всегда привязаны к составу объектов конкретной прикладной решения.

Как подключить обработку на постоянной основе

Разовый запуск через «Файл → Открыть» неудобен, если обработкой пользуются регулярно. В конфигурациях на базе Библиотеки стандартных подсистем (БСП) есть справочник «Дополнительные отчеты и обработки», который позволяет зарегистрировать EPF-файл в базе и вывести его в интерфейс пользователей.

При подключении система запрашивает у обработки сведения: название, версию, вид (заполнение объекта, печатная форма, создание связанных объектов, дополнительная обработка), назначение — для каких объектов конфигурации она предназначена. Для этого в модуле обработки должна быть экспортная функция СведенияОВнешнейОбработке(), возвращающая структуру с параметрами регистрации.

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

Как создать собственную EPF-обработку

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

Минимальная обработка может состоять только из модуля объекта с процедурой, выполняющей нужные действия. Например, обработка для пакетной установки цен или перепроведения документов за период часто обходится без формы — параметры задаются прямо в коде или запрашиваются программно.

bsl
Функция СведенияОВнешнейОбработке() Экспорт
	ПараметрыРегистрации = Новый Структура;
	ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка");
	ПараметрыРегистрации.Вставить("Наименование", "Моя обработка");
	ПараметрыРегистрации.Вставить("Версия", "1.0");
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
	Возврат ПараметрыРегистрации;
КонецФункции

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

Безопасность: риски при запуске чужих EPF-файлов

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

Платформа 1С поддерживает безопасный режим исполнения, в котором ограничены опасные операции: доступ к файловой системе, COM-объектам, внешним компонентам. В типовых конфигурациях действует механизм профилей безопасности, а администратор может запретить пользователям открытие внешних обработок вовсе — через роль или настройки программы.

Типичные ошибки
01
Запуск обработки в рабочей базе без тестирования на копии — риск порчи данных без возможности отката
02
Использование обработки, написанной под другую конфигурацию — ошибки обращения к отсутствующим объектам метаданных
03
Отсутствие функции СведенияОВнешнейОбработке() — файл не регистрируется в справочнике дополнительных обработок
04
Хранение единственной копии обработки только в базе — при отключении из справочника или сбое исходник теряется
05
Игнорирование безопасного режима — обработка получает неограниченный доступ к системе

Когда использовать EPF, а когда — другой механизм

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

Если доработка должна работать постоянно и прозрачно для пользователей — менять поведение документов, добавлять реквизиты, подменять типовые процедуры — правильный инструмент это расширение конфигурации (CFE). Если задача сводится к выводу данных, используйте внешний отчёт (ERF) с схемой компоновки. Попытки натянуть EPF на чужие сценарии приводят к громоздким и хрупким решениям.

Маршрут решения

Как выбрать действие

Нужно разово или периодически выполнить действие с даннымиСоздайте или запустите EPF-обработку
Нужен нестандартный отчёт без изменения конфигурацииИспользуйте внешний отчёт ERF на СКД
Нужно постоянно менять поведение типовых объектовСоздайте расширение конфигурации CFE
Обработку должны запускать пользователи из интерфейсаЗарегистрируйте её в справочнике дополнительных отчетов и обработок
Итог

Что важно запомнить

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

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

Чем открыть EPF-файл, если нет 1С?

Без установленной платформы 1С содержимое EPF-файла полноценно не просмотреть — это бинарный формат. Существуют сторонние утилиты разборки на исходные файлы, но для редактирования и запуска всё равно потребуется платформа. Практичный вариант — попросить автора прислать описание алгоритма или текст модуля отдельно.

Можно ли конвертировать EPF в ERF или наоборот?

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

Почему EPF-обработка не открывается в моей базе?

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

Опасно ли запускать внешние обработки в рабочей базе?

Зависит от содержимого. Обработка выполняется с правами пользователя и может изменять любые доступные ему данные. Перед запуском чужого файла просмотрите код в конфигураторе, сделайте резервную копию и сначала протестируйте на копии базы. Используйте безопасный режим, если обработка это поддерживает.

Что делать, если обработка перестала работать после обновления конфигурации?

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

Можно ли запускать EPF-обработку по расписанию?

Да, если обработка зарегистрирована в справочнике дополнительных отчетов и обработок и в её сведениях предусмотрены команды с вариантом вызова на сервере. Тогда в карточке обработки настраивается расписание, и платформа выполняет её как регламентное задание. Обработки, требующие интерактивного ввода, по расписанию работать не смогут.