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

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

Как открыть модуль внешней обработки в 1С 8.3

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

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

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

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

Что такое внешняя обработка и где лежит её код

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

Важно понимать, что код не лежит «в одном месте». Модуль объекта отвечает за логику самой обработки, модуль формы — за поведение элементов на экране, а управляемые формы дополнительно разделяют код на клиентские и серверные контексты (директивы &НаКлиенте, &НаСервере). Поэтому фраза «открыть модуль обработки» на практике означает выбор конкретного модуля.

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

Запустите конфигуратор той информационной базы, в которой планируете работать с обработкой. Открывать саму конфигурацию (команда «Конфигурация → Открыть конфигурацию») для этого не обязательно — внешние файлы открываются независимо.

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

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

Порядок открытия обработки
  1. 1
    Запустите конфигуратор нужной базы
  2. 2
    Выполните Файл → Открыть (Ctrl+O)
  3. 3
    Выберите файл .epf и подтвердите открытие
  4. 4
    Дождитесь появления окна структуры обработки
  5. 5
    Откройте нужный модуль: объекта или формы

Открытие модуля объекта

Модуль объекта содержит основную логику обработки, не привязанную к форме. Чтобы его открыть, в окне структуры обработки щёлкните правой кнопкой мыши по корневому элементу (имени обработки вверху дерева) и выберите пункт «Открыть модуль объекта». Альтернатива — кнопки «Действия» на панели инструментов окна обработки.

Откроется редактор кода. Здесь удобно пользоваться выпадающим списком процедур и функций в верхней части редактора — он показывает все методы модуля и позволяет быстро перейти к нужному. Поиск по тексту выполняется стандартно, через Ctrl+F.

Если пункт «Открыть модуль объекта» неактивен или модуль пуст, это нормально: у простых обработок вся логика может находиться только в модуле формы, а модуль объекта не содержит кода.

Открытие модуля формы

Чаще всего нужен именно модуль формы — там находятся обработчики кнопок, события открытия, обращения к данным. В дереве обработки раскройте ветку «Формы» и дважды щёлкните по нужной форме (обычно она называется «Форма» или «ОсновнаяФорма»).

Откроется редактор формы. Внизу окна есть вкладки: «Форма» (визуальный редактор), «Модуль» (код), для управляемых форм также «Командный интерфейс». Перейдите на вкладку «Модуль» — перед вами код формы с директивами компиляции.

Обратите внимание на директивы &НаКлиенте и &НаСервере: одна и та же процедура может существовать в двух контекстах. При поиске ошибки проверяйте, в каком контексте выполняется проблемный код — это влияет на доступные объекты и методы.

Поиск кода по всем модулям обработки

Когда неизвестно, в каком модуле находится нужный фрагмент, используйте глобальный поиск. Откройте обработку в конфигураторе, затем выполните Правка → Глобальная замена → Глобальный поиск (Ctrl+Shift+F), введите искомый текст и укажите область поиска — открытый файл обработки.

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

Защищённые обработки и ограничения

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

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

Типичные ошибки при открытии

Сообщение «Нарушена целостности структуры файла» или аналогичное означает, что файл повреждён при копировании или скачивании — запросите файл заново. Ошибка несовместимости версии возникает, когда обработка сохранена в платформе новее вашей: обновите платформу или попросите пересохранить файл.

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

Типичные ошибки
01
Попытка посмотреть код в режиме «Предприятие» — там обработка только выполняется, модуль недоступен
02
Поиск всей логики в модуле объекта, когда код находится в модуле формы, — и наоборот
03
Правка обработки без копии файла — при ошибке восстановить исходник не получится
04
Игнорирование директив &НаКлиенте/&НаСервере при анализе ошибок — код выполняется в разных контекстах

Проверка результата после правок

После изменения модуля сохраните файл (Ctrl+S) и проверьте синтаксис: кнопка «Проверка синтаксиса» в редакторе кода или команда Конфигурация → Проверка конфигурации с флагом проверки модулей для открытого файла. Ошибки компиляции будут показаны в окне сообщений с указанием строки.

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

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

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

Сохранение файла
Норма

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

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

Ошибка записи или предупреждение о несовместимости версии

Синтаксис модулей
Норма

Проверка завершается без ошибок компиляции

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

В окне сообщений есть ошибки с указанием строк

Запуск в режиме «Предприятие»
Норма

Обработка открывается и выполняет нужное действие

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

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

Итог

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

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

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

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

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

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

Разработчик установил защиту на модуль обработки. Без пароля код недоступен, штатного способа снятия защиты нет. Обратитесь к автору обработки за паролем или незащищённой версией.

Чем отличается модуль объекта от модуля формы?

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

Файл .epf не открывается двойным кликом из проводника — это ошибка?

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

Как найти нужную процедуру в большой чужой обработке?

Используйте глобальный поиск (Ctrl+Shift+F) по открытому файлу обработки — он ищет по всем модулям сразу и показывает, в каком модуле и на какой строке находится вхождение. Внутри одного модуля помогает выпадающий список процедур и функций над редактором кода.

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

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