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

Администрирование · 11 мин

Как добавить дополнительные обработки в 1С

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

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

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

Ниже разобраны оба способа, настройка прав, проверка безопасности файла и типичные ошибки, из-за которых обработка не появляется в списке или завершается с ошибкой.

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

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

Типовые сценарии использования: групповое перепроведение документов, загрузка данных из Excel, поиск и замена дублей справочников, заполнение табличных частей по условию, выгрузка данных в нестандартном формате. Многие такие инструменты поставляются на диске ИТС или публикуются сообществом разработчиков.

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

Разовый запуск через меню «Файл — Открыть»

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

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

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

Регистрация через «Дополнительные отчеты и обработки» (БСП)

В конфигурациях на базе БСП (1С:Бухгалтерия, Управление торговлей, ERP, ЗУП и других) встроен механизм дополнительных отчетов и обработок. Сначала убедитесь, что он включен: перейдите в «Администрирование — Печатные формы, отчеты и обработки» и установите флаг «Дополнительные отчеты и обработки». После этого в том же разделе появится ссылка на список дополнительных объектов.

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

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

Порядок действий
  1. 1
    Включите опцию «Дополнительные отчеты и обработки» в разделе «Администрирование — Печатные формы, отчеты и обработки»
  2. 2
    Откройте список «Дополнительные отчеты и обработки» и нажмите «Добавить из файла»
  3. 3
    Выберите файл .epf и проверьте автоматически заполненные сведения
  4. 4
    Укажите разделы размещения и список пользователей быстрого доступа
  5. 5
    Запишите карточку, опубликуйте обработку и проверьте её появление в разделе

Виды дополнительных обработок и их назначение

Механизм БСП различает несколько видов дополнительных объектов, и от вида зависит, где обработка появится и как будет вызываться. Вид задаётся в сведениях обработки и определяется автоматически при загрузке.

Вид обработкиГде появляетсяТиповое назначение
Дополнительная обработкаРазделы программы, команда «Дополнительные обработки»Универсальные операции: загрузки, свертки, сервисные функции
Дополнительный отчетРазделы программы, команда «Дополнительные отчеты»Нестандартные отчеты на СКД
Заполнение объектаКнопка «Заполнить» в форме документа или справочникаЗаполнение табличных частей по условию
Печатная формаКнопка «Печать» в форме объектаНестандартные макеты печатных форм
Создание связанных объектовКнопка «Создать на основании»Ввод документов на основании по своим правилам

Для видов «Заполнение объекта», «Печатная форма» и «Создание связанных объектов» в карточке обработки дополнительно указывается, к каким типам объектов она привязана (например, только к документу «Реализация товаров и услуг»). Если привязка не задана, команда не появится в формах.

Проверка безопасности файла перед подключением

Код внешней обработки выполняется с правами пользователя, который её запускает, и имеет полный доступ к данным базы через встроенный язык. Файл, скачанный с форума или полученный по почте, может содержать код, удаляющий документы, отправляющий данные наружу или открывающий доступ посторонним.

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

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

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

Настройка прав доступа и расписания

Для работы с механизмом дополнительных обработок пользователю нужны соответствующие права. Добавлять файлы в справочник может только пользователь с правами администратора или с ролью «Добавление и изменение дополнительных отчетов и обработок». Обычным пользователям достаточно права на выполнение — оно настраивается через быстрый доступ в карточке обработки.

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

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

Обновление и удаление подключенных обработок

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

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

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

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

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

Обработка в списке БСП
Норма

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

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

Элемент создан, но сведения пусты — файл не содержит описания по стандарту БСП

Команда в интерфейсе
Норма

Команда видна в указанном разделе или в форме объекта у нужных пользователей

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

Команды нет — проверьте размещение, быстрый доступ и привязку к типам объектов

Выполнение
Норма

Обработка отрабатывает без ошибок и даёт ожидаемый результат на тестовых данных

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

Ошибки обращения к реквизитам — обработка написана под другую конфигурацию или версию

Часто задаваемые вопросы

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

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

Почему кнопка «Добавить из файла» недоступна или список пуст?

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

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

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

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

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

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

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

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

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

Итог

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

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