Разработка и Конфигурация · 11 мин
Как запустить код обработки в 1С
Как запустить код обработки в 1С: через меню Файл-Открыть, подключение внешних обработок, консоль кода, отладка и решение типичных ошибок.
Запустить код обработки в 1С можно несколькими способами: открыть файл обработки напрямую в режиме предприятия, подключить её как внешнюю обработку к конфигурации, выполнить код через консоль кода или запустить модуль в отладчике конфигуратора. Выбор способа зависит от того, есть ли у вас файл .epf, встроенная обработка в конфигурации или просто фрагмент кода, который нужно проверить.
Чаще всего под «запуском кода обработки» понимают выполнение внешней обработки — файла с расширением .epf (управляемые формы) или .erf (обычные формы). Такие файлы распространяются отдельно от конфигурации и не требуют её изменения, что делает их удобным инструментом для разовых операций: загрузки данных, групповой обработки документов, тестирования алгоритмов.
Перед запуском любой обработки, полученной из внешнего источника, убедитесь, что у вас есть актуальная копия базы. Код обработки выполняется с правами текущего пользователя и может изменять или удалять данные без возможности отката, если транзакция уже зафиксирована.
Запуск внешней обработки через меню «Файл → Открыть»
Это базовый способ, который работает в большинстве конфигураций на управляемых формах. Запустите 1С в режиме предприятия, откройте главное меню (кнопка с треугольником или значком в левом верхнем углу) и выберите пункт «Файл → Открыть». В диалоге укажите путь к файлу обработки с расширением .epf и подтвердите открытие.
После открытия форма обработки появится в отдельном окне или вкладке. Дальнейшие действия зависят от логики самой обработки: обычно нужно заполнить параметры (период, организацию, список документов) и нажать командную кнопку — «Выполнить», «Загрузить», «Сформировать» и т.п. Код при этом выполняется на сервере или на клиенте в зависимости от директив компиляции в модуле.
- 1Сделайте резервную копию базы или убедитесь в её наличии
- 2Запустите 1С в режиме предприятия под пользователем с достаточными правами
- 3Откройте меню «Файл → Открыть» и выберите файл .epf
- 4Заполните параметры на форме обработки
- 5Нажмите кнопку выполнения и дождитесь завершения
- 6Проверьте результат по сообщениям и данным в базе
Если обработка не открывается и появляется сообщение о несовместимости, проверьте тип форм: обработка на обычных формах (.erf) не запустится в тонком клиенте управляемого приложения, и наоборот. В таком случае либо запускайте соответствующий клиент, либо ищите версию обработки под ваш режим работы.
Подключение обработки через механизм «Дополнительные отчеты и обработки»
В типовых конфигурациях на библиотеке стандартных подсистем (БСП) — «Управление торговлей», «Бухгалтерия предприятия», «ERP» — внешние обработки подключаются штатно через раздел «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки». Для этого функциональная опция «Дополнительные отчеты и обработки» должна быть включена.
Нажмите «Добавить из файла», выберите .epf-файл и запишите элемент справочника. Обработка появится в списке и станет доступна пользователям по кнопке «Дополнительные обработки» в разделах, указанных в настройках размещения. Преимущество способа — централизованное хранение, разграничение прав и журналирование запусков.
Выполнение произвольного кода через консоль кода
Если нужно запустить не файл обработки, а отдельный фрагмент кода — например, исправить реквизит у группы документов или проверить запрос — удобнее использовать консоль кода. Это специализированная внешняя обработка, которая предоставляет поле для ввода кода на встроенном языке и кнопку его выполнения.
Откройте консоль кода тем же способом — через «Файл → Открыть», вставьте код в поле и нажмите «Выполнить». Консоль покажет ошибки компиляции, результат выполнения и позволит выводить промежуточные значения через Сообщить(). Многие версии консолей поддерживают выполнение кода в транзакции с откатом, что безопасно для экспериментов: данные физически не изменятся.
Запрос = Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Документ.РеализацияТоваровУслуг ГДЕ Дата >= &Дата");
Запрос.УстановитьПараметр("Дата", НачалоМесяца(ТекущаяДатаСеанса()));
Выборка = Запрос.Выполнить().Выбрать();
Сообщить("Найдено документов: " + Выборка.Количество());Код из консоли выполняется на сервере в контексте текущего сеанса. Это значит, что недоступны клиентские конструкции (ОткрытьФорму, диалоги выбора файла), если консоль не предусматривает раздельное выполнение на клиенте и сервере.
Запуск и отладка обработки в конфигураторе
Разработчику, который дорабатывает обработку, удобнее запускать её из конфигуратора с отладкой. Откройте файл обработки в конфигураторе («Файл → Открыть»), затем запустите отладку через «Отладка → Начать отладку» или клавишу F5. Платформа запустит сеанс предприятия, подключённый к отладчику.
Далее в запущенном сеансе откройте обработку через «Файл → Открыть» — выполнение остановится на установленных точках останова. Вы сможете пошагово проходить код (F10 — шаг через, F11 — шаг внутрь), смотреть значения переменных в табло (Shift+F9) и изменять их на лету для проверки гипотез.
Если точки останова не срабатывают, проверьте, что отлаживается именно тот предмет отладки: серверный код требует включённой отладки на сервере (флаг -debug в параметрах запуска сервера 1С). Для файловой базы достаточно стандартной настройки, для клиент-серверной — перезапуска службы агента с ключом отладки.
Запуск кода обработки программно — из другого кода
Иногда обработку нужно вызвать не вручную, а из другого модуля — например, из регламентного задания или кнопки на форме. Для этого используется объектная модель работы с внешними обработками: метод ВнешниеОбработки.Создать() с указанием полного пути к файлу возвращает объект обработки, у которого можно вызывать экспортные процедуры и функции.
Учтите ограничение: в безопасном режиме и при определённых настройках профилей безопасности кластера создание внешних обработок по пути файловой системы может быть запрещено. В типовых конфигурациях вместо прямого обращения рекомендуется использовать программный интерфейс подсистемы дополнительных отчетов и обработок, где обращение идёт по ссылке на элемент справочника, а не по пути к файлу.
Как выбрать способ запуска
Типичные ошибки при запуске и их устранение
Сообщение «Ошибка при выполнении файловой операции» или «Файл не обнаружен» обычно означает, что путь к обработке недоступен: файл переместили, сетевая папка отключена или у пользователя нет прав на чтение каталога. Скопируйте файл локально и повторите попытку.
Ошибка «Нарушение прав доступа» при открытии говорит о том, что у пользователя нет права «Интерактивное открытие внешних отчетов и обработок». Это право задаётся в ролях конфигурации; обратитесь к администратору, чтобы его включили, либо запускайте обработку под пользователем с полными правами — но только в тестовой базе.
Если обработка открывается, но при выполнении возникает «Ошибка компиляции модуля», причина чаще всего в несовместимости версий: код использует методы платформы, которых нет в вашей версии, либо обращается к объектам конфигурации, которые были переименованы или удалены. Здесь поможет только доработка кода под вашу конфигурацию.
Как проверить, что код выполнился корректно
Первый признак успешного выполнения — отсутствие сообщений об ошибках и появление ожидаемого результата: созданных документов, изменённых реквизитов, сформированного отчёта. Не полагайтесь только на отсутствие ошибок: код мог завершиться штатно, но обработать ноль записей из-за неверного отбора.
Проверьте результат выборочно: откройте несколько объектов, которые должна была изменить обработка, и убедитесь, что значения соответствуют ожиданиям. Для массовых операций полезно заранее зафиксировать контрольные числа — количество документов за период, итоговую сумму — и сверить их после выполнения.
Как проверить результат
Информационные сообщения о количестве обработанных объектов, ошибок нет
Тексты об ошибках компиляции, прав доступа или незаполненных параметрах
Совпадает с ожидаемым числом объектов по отбору
Ноль обработанных записей при наличии подходящих данных — неверный отбор
Выборочно проверенные объекты содержат ожидаемые изменения
Изменения отсутствуют или затронули лишние объекты
Частые вопросы
Можно ли запустить обработку 1С без конфигуратора?
Да. Файл внешней обработки .epf открывается прямо в режиме предприятия через «Файл → Открыть», конфигуратор не нужен. Конфигуратор требуется только для редактирования кода обработки и её отладки.
Почему обработка открывается, но кнопка «Выполнить» не работает?
Чаще всего не заполнены обязательные параметры на форме, и код прерывается проверкой в начале процедуры. Также возможно, что обработчик кнопки находится в серверном контексте, а вызов блокируется ошибкой прав. Откройте журнал регистрации — там обычно видно фактическую причину.
Как запустить обработку на сервере 1С автоматически по расписанию?
Через регламентное задание: в конфигурации создаётся задание, чей метод вызывает нужный код, и настраивается расписание. В типовых конфигурациях с БСП дополнительные обработки вида «Серверная» можно привязать к расписанию штатно, без доработки конфигурации.
Безопасно ли запускать обработки, скачанные из интернета?
Только после проверки. Откройте файл в конфигураторе и просмотрите модули на предмет обращений к внешним ресурсам, отправки данных и массовых удалений. Первый запуск выполняйте на копии базы под пользователем с ограниченными правами.
Чем отличается запуск обработки .epf от .erf?
Расширение .epf — обработка с управляемыми формами, работает в тонком и веб-клиенте. Файл .erf содержит обычные формы и запускается только в толстом клиенте в режиме обычного приложения. Для современных конфигураций нужен формат .epf.
Можно ли отменить изменения после выполнения обработки?
Штатной кнопки «отменить» нет: зафиксированные транзакции необратимы. Поэтому перед запуском делают копию базы либо используют консоль кода с режимом выполнения в транзакции с откатом. Восстановление возможно только из резервной копии.
Что важно запомнить
Для разового запуска открывайте .epf через «Файл → Открыть», для регулярной работы подключайте обработку через «Дополнительные отчеты и обработки», для произвольного кода используйте консоль, а для поиска ошибок — отладку в конфигураторе. Любую непроверенную обработку сначала запускайте на копии базы.