1С:Предприятие 8.2 /
Разработчикам /
Платформа, механизмы и технологии
Подготовка внешних компонент для загрузки в конфигурацию
Ограничения в работе внешних компонент
Внешние компоненты могут быть упакованы в ZIP-архив. Для работы с Веб-клиентом и тонким клиентом – это обязательное условие. В него должны войти собственно компоненты для ОС Windows (x86, x86_64), GNU/Linux (x86, x86_64), созданные расширения для Internet Explorer (x86, x86_64) и Firefox (Windows x86, GNU/Linux x86 и x86_64). В составе архива включается файл MANIFEST.XML с описанием содержимого:
<?xml version="1.0" encoding="UTF-8" ?>
<bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">
<component os="Windows" path="AddIn_ChrWindows_x86.msi" type="plugin" object="com.YourCompanyName.YouExtensionName.1" arch="i386" client="Firefox" clientVersion="40.*" />
<component os="Linux" path="AddIn_ChrLinux_x86.sh" type="plugin" object="com.YourCompanyName.YouExtensionName.1" arch="i386" client="Firefox" clientVersion="40.*" />
<component os="Linux" path="AddIn_ChrLinux_x86_64.sh" type="plugin" object="com.YourCompanyName.YouExtensionName.1" arch="x86_64" client="Firefox" clientVersion="40.*" />
<component os="Windows" path="Addin_IEWindows_x86.cab" type="plugin" object="MyComponenIE.AddInServiceEx" arch="i386" client="MSIE" />
<component os="Windows" path="AddIn_IEWindows_x86_64.cab" type="plugin" object=" MyComponenIE.AddInServiceEx" arch="x86_64" client="MSIE" />
<component os="Windows" path="AddIn_ChrWindows_x86.msi" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="i386" client="Chrome" />
<component os="Linux" path="AddIn_ChrLinux_x86.sh" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="i386" client="Chrome" />
<component os="Linux" path="AddIn_ChrLinux_x86_64.sh" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="x86_64" client="Chrome" />
<component os="MacOS" path="AddIn_SafMacOS_x86.pkg" type="plugin" object=" application/component-example-1" arch="i386" client="Safari" />
<component os="Windows" path="AddInNative.dll" type="native" arch="i386" />
<component os="Windows" path="AddInNative64.dll" type="native" arch="x86_64" />
<component os="Linux" path="AddInNative.so" type="native" arch="i386" />
<component os="Linux" path="AddInNative64.so" type="native" arch="x86_64" />
</bundle>,
Где:
- Os – операционная система (Windows, Linux, MacOS),
- Path – название файла в архиве
- Type – тип компоненты (plugin – расширение для браузера, native – Native-компонента, com – COM-компонента)
- Object – название объекта, который будет создаваться браузером
- Arch – для какой архитектуры процессора должна использоваться компонента (i386 – 32-х разрядный процессор, x86_64 – 64-х разрядный)
- Client – используется для Веб-клиента: указывает для какого браузера компонента (MSIE – Internet Explorer, Firefox)
- clientVersion – версия браузера. Обязательна для браузера Firefox.
Соответствие версий clientVersion, указанных в манифесте и версий браузера Firefox:
Manifest.xml | Firefox |
40.* | 40 и выше |
При изменении внешних компонент (новый релиз, исправление ошибок и т.д.) новую версию нужно добавлять к имени файла. Например: AddInNative_1_1.so. Это правило не распространяется на расширения для браузеров. Для них должно быть изменено название object.
Обратите внимание, что записи для Google Chrome и Mozilla Firefox ссылаются на один и тот же установочный пакет.
Ограничения в работе внешних компонент
Разработчик должен учитывать, что внешняя компонента может быть подключена как в оконном приложении ( тонкий клиент , толстый клиент), так и в консольном (например: на сервере 1С:Предприятия или в веб-клиенте), где может отсутствовать главное окно и оконная система, очередь сообщений, таймеры, использующие очередь сообщений, нет возможности поставить локальный хук, например, на клавиатуру. В этом случае, разработчик компоненты должен самостоятельно позаботиться о создании необходимого окружения для корректной работы внешней компоненты
Описание примеров
В поставку настоящей методики входят примеры реализации внешних компонент, разработанных с использованием технологий Native API и СОМ, расширений для Firefox и Internet Explorer. Кроме примера в поставку включен шаблон, позволяющий упростить создание компоненты “с нуля”.
Реализации компонент максимально приближены друг к другу (одинаковые идентификаторы, названия и т.д.), что упрощает процесс освоения и разбора различных реализаций.
Компоненты реализуют следующие свойства и методы:
Свойства
Включен (IsEnabled)
Использование: Чтение и запись.
Описание: Тип: Булево. Содержит состояние компоненты.
ЕстьТаймер (IsTimerPresent)
Использование: Чтение.
Описание: Тип: Булево. Определяет наличие у компоненты таймера.
Методы
Включить (Enable)
Синтаксис:
Включить()
Описание:
Включает объект компоненты.
Выключить (Disable)
Синтаксис:
Выключить()
Описание:
Выключает объект компоненты.
ПоказатьВСтрокеСтатуса (ShowInStatusLine)
Синтаксис:
ПоказатьВСтрокеСтатуса(<Текст>)
Параметры:
Описание:
На 5 секунд выводит в строку статуса полученный текст.
ВключитьТаймер (StartTimer)
Синтаксис:
ВключитьТаймер()
Описание:
Включает таймер компоненты. Каждую секунду компонента посылает сообщение " 1С:Предприятию " с параметрами “Component”, “Timer” и строкой счетчика системных часов.
ВыключитьТаймер (StopTimer)
Синтаксис:
ВыключитьТаймер()
Описание:
Выключает таймер компоненты.
Кроме того, компонента, разработанная с использованием Native API, дополнительно реализует метод
ЗагрузитьКартинку(LoadPicture)
Синтаксис:
ЗагрузитьКартинку (<ИмяФайла>)
Параметры:
Описание:
Загружает изображение из указанного файла и передает его в "1С: Предприятие ".
ПоказатьСообщение
Синтаксис:
ПоказатьСообщение ()
Параметры:
Нет
Описание:
Выводит сообщение о версии платформы.
Средства разработки и примеры
В качестве средств разработки можно применять:
- Microsoft Visual C++,
- Delphi,
- C++ Builder,
- gcc
Примеры создания внешних компонент находятся в каталоге /1CIts/EXE/VNCOMPS
Примеры для работы с "1С:Предприятием 8.3" располагаются в подкаталоге VNCOMP83.
ВЫ МОЖЕТЕ ПРЯМО СЕЙЧАС СКОПИРОВАТЬ ПРИМЕРЫ ВНЕШНИХ КОМПОНЕНТ
НА ЖЕСТКИЙ ДИСК ВАШЕГО КОМПЬЮТЕРА
Копировать
Тренинг-семинар «Как получить работу бухгалтера»
Курсы бухгалтеров с трудоустройством
Курсы программирования 1С:Предприятие 8.2
Другие материалы по теме:
параметры:, чтение, внешняя компонента, пример:, примеры, название, свойства, описание, система, что, средства, опис, клиент, файл, использование, например, объект, конфигурирование, параметры, работы, пример
Материалы из раздела: 1С:Предприятие 8.2 / Разработчикам / Платформа, механизмы и технологии
Другие материалы по теме:
Технология создания внешних компонент
Общесистемные механизмы и принципы
Особенности разработки конфигураций для ОС Linux
Зачем в "Нормах затрат" нужно задавать суммы по материалам и где эти суммы потом используются?
Вопросы безопасности информационных систем на платформе 1С:Предприятие 8.1
Нас находят: manifest xml 1c, внешняя Компонента 1с, внешняя компонента 1с manifest, component os=Windows path=IPScanner dll type=native arch=i386, 1с manifest, внешняя компонента что это, delphi компонент 1с 8 3, manifest xml внешняякомпонента 1С
Мы на Facebook