Подключаем внешнюю обработку (.epf) в базу 1С 8.3

· 9 мин

Содержание

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

Есть и быстрый путь — разово открыть файл через Файл → Открыть и выбрать .epf. Он годится, чтобы один раз что-то посчитать, но после закрытия программы ярлыка не останется, прав никому не выдать и по расписанию такую обработку не запустить. Ниже — про полноценное встраивание внешней обработки в конфигурацию 1С 8.3 на управляемых формах (БП 3.0, ЗУП 3.1, УТ 11 и другие на БСП).

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

Что нужно от файла обработки до подключения

Встроить через список «Дополнительные отчёты и обработки» можно не любой файл. Требования такие:

  • 📄 Формат .epf (внешняя обработка) или .erf (внешний отчёт).
  • ⚙️ Обработка собрана на управляемых формах — обычные формы 8.2 список не примет.
  • 🔑 Внутри обработки есть экспортная функция СведенияОВнешнейОбработке(). Без неё база не поймёт, как показать команду и к чему её привязать.

Функция возвращает структуру с видом, назначением и списком команд. Вид определяет, где обработка появится:

Вид обработкиГде вызывается
ДополнительнаяОбработкав списке дополнительных обработок, открывается вручную
ПечатнаяФормакнопка Печать в документе или справочнике
ЗаполнениеОбъектакоманда заполнения в карточке объекта
Отчётв списке дополнительных отчётов
СозданиеСвязанныхОбъектовменю Создать на основании

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

Если функции СведенияОВнешнейОбработке() в файле нет, встроить его в список не выйдет — останется только разовое открытие через Файл → Открыть. Дорабатывает функцию программист в конфигураторе.

Подключаем обработку в список: пошагово

Порядок одинаков для большинства типовых конфигураций на управляемом интерфейсе «Такси».

  1. Откройте Администрирование → Печатные формы, отчёты и обработки.
  2. Установите флажок Дополнительные отчёты и обработки — без него ссылка на список неактивна.
  3. Перейдите по ссылке Дополнительные отчёты и обработки.
  4. Нажмите Добавить из файла… и выберите .epf на диске.
  5. Если появится предупреждение о безопасности — прочитайте его (разберём в разделе про права) и подтвердите загрузку.
  6. В карточке проверьте поля: Наименование, Вид, при необходимости — Безопасный режим.
  7. В таблице Размещение (или Команды) укажите, в каких разделах и у каких объектов обработка должна появиться.
  8. Запишите и закройте карточку.

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

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

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

Проверьте перед загрузкой файла
Выполнено: 0 / 5

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

Права доступа и безопасный режим

Два отдельных вопроса: кто может подключать обработки и с какими ограничениями они работают.

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

Кому видна команда. В карточке обработки, в таблице размещения, можно ограничить доступ по пользователям или группам доступа. Если команда не появилась у сотрудника — проверьте, что он попал в разрешённый список и что у него есть права на сам раздел.

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

  • 🚫 обращаться к файловой системе сервера напрямую;
  • 🚫 запускать внешние программы и COM-объекты;
  • 🚫 работать с привилегиями, которых нет у текущего пользователя.

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

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

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

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

Запуск обработки по расписанию

Дополнительную обработку можно не только открывать вручную, но и запускать автоматически — например, ночную выгрузку или пересчёт. За это отвечает вид команды ВызовСерверногоМетода с галочкой расписания.

Чтобы настроить:

  1. Откройте карточку обработки в списке дополнительных.
  2. В таблице команд найдите команду с типом, допускающим запуск по расписанию (у неё есть колонка или ссылка Расписание).
  3. Нажмите на расписание и задайте периодичность: раз в день в заданное время, каждые N часов и т. п.
  4. Запишите карточку.

Дальше запуском управляет механизм регламентных заданий платформы. Поэтому расписание сработает только при выполнении условий:

  • 🖥️ В файловой базе регламентные задания идут лишь пока открыт хотя бы один сеанс (или запущен отдельный сеанс-планировщик). Закрыли все окна — задания не выполняются.
  • 🗄️ В клиент-серверной базе задания выполняет рабочий процесс на сервере, сеанс пользователя для этого не нужен.

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

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

Полезная привычка для регулярной обработки — чтобы она сама писала результат в журнал регистрации: сколько строк обработала, что выгрузила. Тогда по утрам достаточно взгляда в журнал, а не ручной перепроверки. Это закладывается на этапе разработки обработки, так что оговорите такое поведение с программистом заранее.

Почему обработка не подключается: разбор ошибок

Самые частые ситуации при встраивании внешней обработки и что с ними делать.

Диагностика: выберите симптом

Если причина непонятна, откройте Администрирование → Обслуживание → Журнал регистрации и отфильтруйте записи по времени запуска обработки. В журнале видно точный текст ошибки платформы — по нему проще искать решение, чем по общему «не работает».

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

Обновление и отключение встроенной обработки

Подключённая обработка живёт в базе своей жизнью, и за ней нужно следить.

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

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

Как удалить полностью. Пометьте карточку на удаление и выполните Администрирование → Обслуживание → Удаление помеченных объектов. Перед удалением убедитесь, что обработку не запускает регламентное задание — иначе в журнале появятся ошибки о недоступном объекте.

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

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

Чем внешняя обработка отличается от встроенной в конфигурацию?
Внешняя (.epf) хранится отдельно и подключается без изменения конфигурации — её можно добавить даже в типовую базу на поддержке, не снимая её с поддержки. Встроенная живёт внутри конфигурации и требует правок в конфигураторе.
Можно ли подключить обработку, не снимая конфигурацию с поддержки?
Да. В этом и смысл механизма дополнительных обработок: файл загружается в справочник, сама конфигурация не меняется. Галочку «Разрешить изменение» трогать не нужно.
Куда сохраняется файл .epf после загрузки?
Внутрь информационной базы, в справочник дополнительных отчётов и обработок. Исходный файл на диске больше не нужен — обработка работает из базы у всех пользователей.
Почему обработку видит администратор, но не видят сотрудники?
Как правило, пользователи не добавлены в список доступа в карточке обработки или у них нет прав на раздел размещения. Проверьте таблицу размещения и настройки прав группы доступа.
Обязателен ли безопасный режим?
Для печатных форм и заполнений — нет, он просто ограничивает обработку в доступе к файлам и внешним программам. Снимать флажок стоит только для проверенного файла, которому эти возможности действительно нужны.