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

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

EPF-файл в 1С: что это и как с ним работать

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

EPF-файл — это внешняя обработка платформы «1С:Предприятие 8»: самостоятельный программный модуль, который запускается поверх любой информационной базы без изменения конфигурации. Внутри файла находятся формы, программный код на встроенном языке 1С, макеты и другие объекты, упакованные в единый контейнер с расширением .epf. Типичные примеры — обработки группового изменения реквизитов, загрузки данных из Excel, печатные формы и сервисные инструменты администратора.

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

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

Что находится внутри EPF-файла и чем он отличается от ERF

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

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

Существуют также расширения конфигурации (CFE) — их часто путают с EPF. Расширение подключается к базе постоянно и модифицирует поведение конфигурации, тогда как внешняя обработка запускается вручную на время сеанса и ничего в структуре базы не меняет.

Как открыть EPF-файл в режиме «Предприятие»

Стандартный способ запуска — меню «Файл → Открыть» (или сочетание Ctrl+O) в клиентском приложении 1С. В диалоге выбора укажите тип файла «Внешние обработки и отчёты» либо «Все файлы» и выберите нужный .epf. Обработка откроется в отдельном окне и начнёт работать с текущей информационной базой.

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

Порядок открытия EPF в 1С
  1. 1
    Сохраните EPF-файл в доступную папку, при необходимости разблокируйте его в свойствах файла Windows
  2. 2
    Запустите 1С в режиме «Предприятие» под пользователем с достаточными правами
  3. 3
    Выберите «Файл → Открыть» или нажмите Ctrl+O и укажите файл .epf
  4. 4
    Дождитесь открытия формы обработки и проверьте, что она корректно работает с данными текущей базы

Во многих типовых конфигурациях (Бухгалтерия, Управление торговлей, ERP) предусмотрен справочник «Дополнительные отчеты и обработки». Регистрация EPF в нём удобнее ручного открытия: обработка появляется в интерфейсе пользователей, можно настроить права доступа, расписание выполнения и привязку к разделам программы.

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

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

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

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

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

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

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

Для командной разработки и хранения исходников в системах контроля версий используются инструменты выгрузки обработок в XML (штатная выгрузка конфигуратора или утилиты вроде OneScript-проектов). Это позволяет вести историю изменений, чего бинарный формат EPF сам по себе не обеспечивает.

Безопасность: что проверить перед запуском чужого EPF

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

Безопасный порядок: сначала открыть файл в конфигураторе и просмотреть модули на предмет подозрительных конструкций (работа с WScript.Shell, запуск внешних приложений, отправка данных по HTTP, массовое удаление объектов), затем протестировать на копии базы и только после этого применять в рабочей среде. В клиент-серверных базах администратору стоит включить профили безопасности и запретить небезопасный режим выполнения внешнего кода.

Типичные ошибки
01
Запуск скачанной обработки сразу в рабочей базе — риск порчи или утечки данных
02
Попытка открыть EPF двойным щелчком в проводнике — файл запускается только изнутри 1С
03
Редактирование единственной копии файла в новой версии платформы — после конвертации обработка не откроется на старой
04
Отсутствие функции СведенияОВнешнейОбработке при регистрации в БСП — подсистема не принимает файл
05
Игнорирование режима безопасности — обработка запускается в безопасном режиме и её команды молча не выполняются

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

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

Сравнение вариантов расширения функциональности

Внешняя обработка (EPF)

Разовые операции и сервисные инструменты; не меняет конфигурацию, но запускается вручную и не хранит настроек в базе

Дополнительные обработки БСП

Периодические задачи пользователей типовых конфигураций; права, расписание, разделы интерфейса; требует функции сведений

Расширение конфигурации (CFE)

Постоянные доработки без снятия с поддержки; подключается ко всей базе, но требует совместимости с релизом конфигурации

Доработка конфигурации

Глубокая интеграция в логику системы; максимальные возможности, но усложняет обновления типового решения

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

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

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

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

Проверка результата и частые проблемы

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

Контрольные точки

Как проверить результат

Форма обработки открылась
Норма

Интерфейс обработки отображается, ошибок исполнения нет

Тревожный признак

Сообщение о несовместимости версии или отказе в правах

Изменения в данных
Норма

Количество и содержимое изменённых объектов совпадает с ожиданием

Тревожный признак

Лишние изменённые объекты, дубли, незаполненные реквизиты

Повторный запуск
Норма

Обработка отрабатывает повторно без дублей и ошибок

Тревожный признак

При повторе создаются дубликаты или возникает конфликт блокировок

Типовые проблемы при работе с EPF: ошибка «Нарушение прав доступа» (недостаточно прав пользователя), «Файл не обнаружен» при регистрации в БСП (недоступность каталога на сервере), молчаливое невыполнение действий в безопасном режиме и конфликты блокировок при массовых изменениях в многопользовательской базе. Большинство из них решается настройкой прав, режима безопасности и порционной обработкой данных.

Итог

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

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

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

Чем открыть EPF-файл без 1С?

Полноценно — никак: формат бинарный и читается только платформой «1С:Предприятие». Сторонние утилиты могут разобрать файл на исходные тексты для просмотра кода, но запустить обработку и работать с данными через них нельзя. Если платформы нет, попросите автора выгрузить модули в текстовом виде.

Чем EPF отличается от ERF?

EPF — внешняя обработка, ориентированная на выполнение действий над данными; ERF — внешний отчёт, построенный вокруг вывода информации, обычно через схему компоновки данных. Технически форматы близки, и открываются они одинаково, но при регистрации в подсистеме БСП тип файла влияет на доступные виды и команды.

Почему 1С пишет «Ошибка формата потока» при открытии EPF?

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

Можно ли конвертировать EPF обратно в текст или конфигурацию?

Код модулей извлекается через конфигуратор (открыть файл и скопировать тексты) или через штатную выгрузку в XML-файлы конфигурации. Автоматического превращения обработки в объект конфигурации нет: формы и структуру придётся переносить вручную, модули — копированием.

Безопасно ли запускать обработки, скачанные с портала 1С или от контрагента?

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

Как запустить EPF по расписанию без участия пользователя?

Через регистрацию в подсистеме «Дополнительные отчеты и обработки» типовой конфигурации с настройкой расписания регламентного задания, либо через запуск 1С в пакетном режиме с параметром Execute, указывающим на файл. Второй способ требует настроенной учётной записи и контроля журнала выполнения.