Перейти к основному содержимому

Внешние компоненты 1С

Разработчику

Назначение

Внешняя компонента — библиотека (.dll, .so), которая расширяет платформу там, где BSL не хватает: ККТ, сканер штрихкода, ТСД, спец. протокол, криптопровайдер.

ТехнологияСтатус
Native APIРекомендуемая, Windows/Linux/macOS, веб и мобильный клиент
COMLegacy (8.1 и совместимость); на сервере Linux не используют

Комплект для Native API — четыре файла (Win32/Win64, Linux32/Linux64) + манifest в ZIP; для тонкого и веб-клиента ZIP обязателен.


Схема подключения

  1. УстановитьВнешнююКомпоненту() — однократно на рабочей станции (тонкий/веб-клиент; из макета или базы, не с диска).
  2. ПодключитьВнешнююКомпоненту() — перед каждым использованием в сеансе.
  3. Новый("AddIn.<Имя>.<Расширение>") — вызов API компоненты.

Установка и подключение
Не объединяйте установку и подключение в один блок без условия: повторная установка вызывает интерактивное исключение.


Откуда брать компоненту

ИсточникТонкий/вебТолстый/сервер
Файл на дискеТолько отдельные .dll/.soДа
Макет конфигурации (ZIP или файлы)ZIP + Установить...Подключить...
ХранилищеЗначения в базеZIP + установкаПодключение

Пример с макета:

УстановитьВнешнююКомпоненту("Обработка.Драйвер.Макет.AddIn");
ПодключитьВнешнююКомпоненту("Обработка.Драйвер.Макет.AddIn", "МойДрайвер");
Объект = Новый("AddIn.МойДрайвер.Компонента");

На сервере и в мобильном приложении — только Native API. Веб-клиент — Native API; COM только в IE на Windows (устаревший сценарий).


Контекст исполнения

КонтекстNative APICOM
Толстый клиентДаДа
Тонкий клиентДаНет
Сервер 1СДаНет
Веб-клиентДаОграниченно (Windows)

Драйвер ККТ на Linux-сервере — Native API на сервере; UI оператора — тонкий клиент с установкой на ПК кассира.


Связанные материалы


Проверка себя

  • Зачем два шага — установка и подключение?
  • Почему на сервере Linux нельзя COM-компоненту Excel?
  • Где хранить ZIP-комплект компоненты для веб-клиента?

См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").