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

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

Как редактировать внешнюю обработку 1С

Как открыть и отредактировать внешнюю обработку 1С в конфигураторе: изменение форм, модулей и макетов, сохранение, подключение к базе и типичные ошибки.

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

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

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

Что потребуется перед началом работы

Для редактирования внешней обработки нужен конфигуратор 1С той же версии платформы, что и рабочая база, либо новее (с учётом режима совместимости). У пользователя должны быть права на запуск конфигуратора — обычно это роль «Администратор» или полные права. В файловой базе достаточно знать путь к каталогу, в клиент-серверной — логин и пароль пользователя с нужными правами.

Обязательно сделайте резервную копию исходного файла обработки перед любыми изменениями. Если обработка подключена к базе как дополнительная, сохраните её копию из справочника «Дополнительные отчеты и обработки» на диск — так у вас останется рабочая версия, к которой можно вернуться. Для файловой базы дополнительно полезно сделать копию самой базы (файла 1Cv8.1CD) или выгрузку в dt.

Как открыть внешнюю обработку в конфигураторе

Запустите конфигуратор и откройте нужную информационную базу. Если обработка не требует контекста конкретной базы, конфигуратор можно запустить и без открытия базы, но для отладки и проверки кода база понадобится. Далее выберите в главном меню «Файл → Открыть» и укажите файл с расширением .epf.

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

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

Порядок открытия обработки
  1. 1
    Сохраните копию исходного файла .epf в отдельную папку
  2. 2
    Запустите конфигуратор и откройте нужную базу
  3. 3
    Выберите «Файл → Открыть» и укажите файл обработки
  4. 4
    Дождитесь загрузки структуры: формы, модули, макеты
  5. 5
    Убедитесь, что дерево объектов отображается и модуль открывается без ошибок

Структура обработки: что и где редактировать

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

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

Код редактируется в модуле, который открывается через контекстное меню формы («Открыть модуль») или по соответствующему элементу дерева. Редактор кода поддерживает подсветку синтаксиса, контекстную подсказку (Ctrl+Пробел) и поиск по тексту (Ctrl+F). Перед сохранением полезно выполнить проверку модуля: «Текст → Проверка синтаксиса» или комбинация Ctrl+F7 — это выявит ошибки до запуска.

Типовые сценарии редактирования

Изменение надписей и элементов формы

Самая частая задача — поправить заголовок кнопки, подсказку или надпись. Откройте форму, выделите нужный элемент и в палитре свойств измените значение «Заголовок». Если надпись жёстко задана в коде (например, через Элементы.Кнопка1.Заголовок), ищите её в модуле формы через поиск по тексту.

Исправление алгоритма в коде

Если обработка работает неправильно — например, неверно считает сумму или не заполняет поле, — откройте модуль формы или объекта и найдите нужную процедуру. Для поиска места ошибки используйте отладку: поставьте точку останова (F9) на подозрительной строке, запустите базу в режиме отладки («Отладка → Начать отладку») и выполните действие в обработке. Конфигуратор остановится на точке, и вы сможете посмотреть значения переменных через «Вычислить выражение» (Shift+F9).

Адаптация под новую версию конфигурации

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

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

Сохранение и проверка результата

Сохранение выполняется через «Файл → Сохранить» или Ctrl+S. Если вы редактируете копию, используйте «Сохранить как» и дайте файлу понятное имя с версией, например «ЗаполнениеДокумента_версия2.epf». Это упростит откат и позволит хранить несколько версий параллельно.

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

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

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

Запуск обработки
Норма

Форма открывается без сообщений об ошибках

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

Ошибка компиляции модуля или «Метод объекта не обнаружен»

Выполнение основного сценария
Норма

Данные создаются и изменяются так, как задумано

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

Пустой результат, неверные значения или аварийное завершение

Журнал регистрации
Норма

Нет новых записей с уровнем «Ошибка»

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

Ошибки, связанные с выполнением обработки

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

Обработка работает стабильно при повторных вызовах

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

Ошибки появляются через раз — признак неочищенных переменных или состояния

Подключение изменённой обработки к базе

Если обработка используется эпизодически, достаточно открывать её через «Файл → Открыть» в режиме предприятия — никакой регистрации не требуется. Это удобно для разовых операций и тестирования.

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

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

Когда редактирование невозможно или нецелесообразно

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

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

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

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

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

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

Можно ли редактировать внешнюю обработку без конфигуратора?

Нет, штатных средств для этого в режиме «1С:Предприятие» нет. Файл .epf — это бинарный контейнер, и изменить формы или код можно только в конфигураторе. Альтернатива — попросить изменения у разработчика обработки.

Почему после редактирования обработка не открывается в рабочей базе?

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

Нужны ли права администратора для редактирования внешней обработки?

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

Как вернуть исходную версию, если после правок обработка сломалась?

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

Можно ли редактировать внешнюю обработку, пока ей пользуются другие пользователи?

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

Чем внешняя обработка отличается от расширения конфигурации?

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

Итог

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

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