Плагины в 1С:Предприятии: расширения, обработки, компоненты
Содержание
Слова «плагин 1С» в самой платформе не встречаются. Так называют четыре разные вещи: расширение конфигурации
(.cfe), внешнюю обработку
или отчёт (.epf, .erf), внешнюю компоненту (COM или Native API) и расширение браузера для веб-клиента. Перед установкой нужно понять, что именно вам предлагают: у каждого вида свой способ подключения и свои риски.
Обычно вопрос возникает так. Программист присылает файл и говорит «поставь плагин». Или веб-клиент просит «установить расширение », а пользователь не понимает, зачем. Разберём все четыре вида по порядку.
Какие бывают плагины: сравнение четырёх видов
| Вид | Файл | Что делает | Где живёт |
|---|---|---|---|
| Расширение конфигурации | .cfe | Меняет и дополняет типовую конфигурацию, не трогая её код | В информационной базе |
| Внешняя обработка / отчёт | .epf, .erf | Отдельная форма или выгрузка, работает рядом с конфигурацией | Файл на диске или справочник в базе |
| Внешняя компонента | .dll или ZIP-архив | Даёт доступ к оборудованию, шифрованию, нестандартным протоколам | Компьютер пользователя или база |
| Расширение браузера | устанавливается из магазина браузера | Позволяет веб-клиенту работать с файлами, подписью, принтером | Браузер пользователя |
Первые два вида пишут на встроенном языке 1С. Третий вид чаще пишут на C++ и подключают к платформе. Четвёртый вид выпускает сама фирма 1С.
Если нужно просто добавить поле в документ или поменять форму, берите расширение. Обновление типовой конфигурации после этого не превращается в ручное слияние.
Расширения конфигурации: основной «плагин» для доработок
Расширения появились в платформе 8.3.6. Идея простая: вы не правите типовую конфигурацию , а описываете изменения отдельно. Платформа накладывает их при запуске.
Что можно сделать расширением:
- ➕ добавить реквизит , справочник, документ, регистр;
- 🖥 изменить форму: добавить кнопку, поле, команду;
- 🔧 перехватить процедуру типового модуля и выполнить свой код до или после неё;
- 📄 добавить печатную форму или отчёт.
Что нельзя: удалить типовой объект и менять то, что не разрешено настройками объекта в конфигурации-основе.
Как создать и загрузить расширение
Создают расширение в Конфигураторе, в меню Конфигурация → Расширения конфигурации. Там же его выгружают в файл .cfe и загружают чужой файл.
Порядок для готового файла:
- Сделайте копию информационной базы. Расширение меняет поведение программы.
- Откройте Конфигуратор и список расширений в меню
Конфигурация. - Добавьте расширение из файла
.cfe. - Выполните обновление конфигурации базы данных. Загрузка файла и обновление БД — два отдельных шага.
- Запустите программу в режиме 1С:Предприятие и проверьте нужные формы.
В конфигурациях с библиотекой стандартных подсистем (БСП) расширения можно подключать и из пользовательского режима. Откройте раздел Администрирование и найдите команду управления расширениями в блоке печатных форм, отчётов и обработок. Для этого нужны права администратора.
Расширение с ошибкой в модуле может не дать открыть форму или весь раздел. Поэтому сначала проверяйте на копии базы.
Безопасный режим и защита от опасных действий
У расширения есть настройка безопасного режима. Включённая защита от опасных действий не даёт коду расширения запускать внешние программы и обращаться к файловой системе без ведома пользователя. Для чужих расширений оставляйте защиту включённой. Отключайте её только для кода, который вы проверили сами.
Внешние обработки и отчёты: файл, который открывают без доработки базы
Внешняя обработка — это файл .epf, внешний отчёт — .erf. Они не меняют конфигурацию. Пользователь открывает файл, видит форму и работает.
Два способа запуска:
- 📂 Разовый. В главном меню выберите
Файл → Открытьи укажите файл. Подойдёт для проверки. - 🗂 Постоянный. Подключите обработку через механизм дополнительных отчётов и обработок из БСП. Файл хранится в самой базе, его видят нужные пользователи.
Во втором варианте обработка встаёт в списки печати, заполнения или создания документов. Права на запуск администратор раздаёт по ролям и пользователям.
Внешняя обработка исполняет любой код с правами пользователя, который её запустил. Файл от неизвестного автора может читать и менять данные базы. Не открывайте обработки из случайных писем и с форумов без проверки кода.
Обработка или расширение
Выбор зависит от задачи:
| Задача | Что выбрать |
|---|---|
| Разовая выгрузка, загрузка данных из Excel | Внешняя обработка |
| Новая печатная форма, которую вызывают из документа | Дополнительная обработка (из БСП) или расширение |
| Новое поле в документе, новая логика проведения | Расширение |
| Изменение типовой формы | Расширение |
Внешние компоненты: связь платформы с оборудованием и системами
Внешняя компонента — это программный модуль, который подключается к платформе через специальный интерфейс. Через неё работают сканеры штрихкода, фискальные регистраторы, программы шифрования, нестандартные обмены.
Бывают два основных типа: компоненты на технологии COM (только Windows) и компоненты Native API. Вторые работают и на Linux, и в веб-клиенте с учётом ограничений браузера.
Из встроенного языка компоненту подключают так: сначала установка, затем подключение с указанием имени и типа. Примерно так выглядит вызов:
Подключено = ПодключитьВнешнююКомпоненту(
"ОбщийМакет.МояКомпонента", "МояКомпонента", ТипВнешнейКомпоненты.Native);
Если компонента лежит в макете конфигурации, то в макете хранится ZIP-архив. В нём находится файл манифеста MANIFEST.XML и сам модуль под нужные платформы. Тогда платформа выбирает подходящую библиотеку сама.
COM-компоненту на старых схемах сначала регистрируют в системе. Для этого нужны права администратора Windows.
Разрядность важна. Для 64-разрядного клиента нужна 64-разрядная библиотека, для 32-разрядного — 32-разрядная. Несовпадение разрядности — самая частая причина сообщения о том, что компонента не загружается.
Расширение браузера для веб-клиента
Когда вы работаете в 1С через браузер, часть операций недоступна веб-странице сама по себе. Это чтение и запись файлов, работа с электронной подписью, печать на локальный принтер. Для этого веб-клиент просит поставить расширение «для работы с 1С:Предприятием».
Как это выглядит на практике:
- Вы нажимаете «Выбрать файл» или «Подписать».
- Появляется окно с предложением установить расширение.
- Браузер открывает свой магазин расширений, вы подтверждаете установку.
- Обновите страницу, и повторите действие.
Для электронной подписи нужно ещё отдельное расширение или плагин вашего криптопровайдера. Какое именно, зависит от провайдера, поэтому смотрите инструкцию поставщика подписи.
Если окно не появляется, проверьте, что расширение не отключено в списке расширений браузера. Корпоративные политики иногда блокируют установку: тогда обратитесь к системному администратору.
Как узнать, что уже установлено в вашей базе
Чужую базу часто принимают без документации. Проверьте по порядку, нет ли в ней скрытых доработок.
- 🧩 Откройте Конфигуратор и список расширений в меню
Конфигурация → Расширения конфигурации. Каждое расширение показано отдельной строкой с именем, версией и признаком «активно». - 📂 В разделе
Администрированиезагляните в блок печатных форм, отчётов и обработок. Там видны подключённые дополнительные обработки и список расширений. - 🌐 Расширения браузера смотрите в настройках самого браузера, в списке установленных расширений.
Полезно выписать для каждого расширения: кто автор, что оно меняет и можно ли без него работать. Такая записка сэкономит часы, когда придёт время обновлять релиз.
Свойства расширения, которые стоит знать
При загрузке расширения платформа показывает несколько настроек. Они влияют на поведение:
| Настройка | Что значит |
|---|---|
| Активно | Выключенное расширение остаётся в базе, но не работает. Удобно для проверки гипотезы |
| Безопасный режим | Ограничивает код расширения: нельзя запускать внешние программы и лезть в файловую систему |
| Защита от опасных действий | Запрашивает подтверждение пользователя перед рискованными операциями |
| Режим совместимости | Определяет, какие возможности платформы доступны коду расширения |
Отключать расширение, которым пользуются люди, лучше вне рабочего времени: при перезапуске сеансы пользователей прервутся.
Что делать с плагином при обновлении платформы и конфигурации
Обновление типовой конфигурации и расширения живут отдельно, но связаны. Расширение перехватывает процедуры типового кода, а при обновлении релиза эти процедуры могут получить другие параметры или исчезнуть.
Порядок действий простой:
- Обновите копию базы до нового релиза.
- Откройте Конфигуратор и запустите проверку расширений. Платформа покажет места, где перехваченный метод не найден.
- Исправьте код расширения и убедитесь, что формы открываются.
- Только после этого обновляйте рабочую базу.
Внешние обработки проверяйте так же: откройте каждую и сформируйте тестовый результат. Внешние компоненты после обновления платформы нужно проверить на совместимость по номеру версии: поставщик оборудования указывает, с какими номерами платформы его компонента работает.
Как управлять плагинами в организации
Если баз много, а пользователей несколько десятков, без правил плагины превращаются в хаос. Рабочая схема короткая:
- 📋 Ведите реестр: что установлено, в какой базе, кто автор, на какой версии конфигурации проверено.
- 🧪 Тестовая копия обязательна. Сначала расширение ставят туда.
- 🔐 Права на подключение расширений и дополнительных обработок оставьте только администраторам.
- 📦 Храните исходные файлы
.cfeи.epfв хранилище с версиями, а не только в базе. - 🔄 После обновления релиза типовой конфигурации проверяйте, не сломались ли расширения.
Почему плагин не работает: диагностика и конфликты версий
Типовые ситуации и что с ними делать.
Конфликт нескольких расширений
Два расширения могут перехватывать одну и ту же процедуру. Платформа вызывает их по очереди, и результат зависит от порядка. Если после установки второго расширения первое работает не так, как раньше, ищите пересечение по перехватам. Выход: объединить доработки в одно расширение или изменить порядок подключения.
Если ничего не помогло
- Отключите все расширения и проверьте, воспроизводится ли ошибка на чистой конфигурации.
- Включайте по одному, пока ошибка не вернётся.
- Сохраните текст ошибки из журнала регистрации и покажите разработчику расширения.