1С
Подсказка
Драйвер разработан в соответствии с требованиями к разработке драйверов подключаемого к 1С оборудования (версия 2.2)
Создание объекта
Компонента = Новый("AddIn.Community.Mertech");
Если Компонента = Неопределено Тогда
ВызватьИсключение "Не удалось создать объект компоненты";
КонецЕсли;
Добавление и получение параметров
При добавлении параметров необходимо контролировать тип этого параметра.
Функция добавления параметра:
УстановитьПользовательскийПараметр([Тип параметра], [Значение])
/ SetCustomParameter([Тип параметра], [Значение])
В качестве типа входного параметра функция принимает числовой номер параметра или его наименование.
Компонента.УстановитьПользовательскийПараметр("Ip", "192.168.0.100"); //Ip
Компонента.УстановитьПользовательскийПараметр(2, "1111"); //Порт
Функция получения параметра:
ПолучитьВыходнойПараметр([Тип параметра], [Значение])
/ GetOutParameter([Тип параметра], [Значение])
В качестве типа входного параметра функция принимает числовой номер параметра или его наименование.
Переменная для значения параметра должна быть объявлена перед вызовом функции и иметь необходимый тип. В результате успешного выполнения функции, переменная будет заполнена.
ИмяМагазина = "";
//Компонента.ПолучитьПользовательскийПараметр("ShopName", ИмяМагазина);
Если(Компонента.ПолучитьВыходнойПараметр(181, ИмяМагазина)) Тогда
Сообщить(ИмяМагазина);
Иначе
Сообщить("Параметр не найден");
КонецЕсли;
Подсказка
Список типов параметров приведён в разделе с общими принципами работы с драйвером.
Функция выполнения команды
Для отправки любой поддерживаемой команды на весы нужно воспользоваться универсальной функцией выполнения команды и указать в качестве аргумента числовой эквивалент нужной команды.
ВыполнитьПользовательскоеДействие([номер команды])
/ DoCustomAction([номер команды])
ВыполнитьПользовательскоеДействиеНаУстройстве([ID устройства], [номер команды])
/ DoCustomActionOnDevice([ID устройства], [номер команды])
Компонента.ВыполнитьПользовательскоеДействие(19);
Компонента.ВыполнитьПользовательскоеДействиеНаУстройстве(ИдентификаторУстройства, 19);
После успешного выполнения команды функция вернёт значение «0». В противном случае вернётся код ошибки.
Подсказка
Список всех поддерживаемых команд приведён в разделе с общими принципами работы с драйвером. Набор параметров и способ работы с каждой командой аналогичны тому, что описаны в разделе С/С++.
Пример работы
Сообщить("Подключение внешней компоненты");
ПутьККомпоненте = "D:\driver_1c.dll";
Если Не ПодключитьВнешнююКомпоненту(ПутьККомпоненте, "Community", ТипВнешнейКомпоненты.Native) Тогда
ВызватьИсключение "Не удалось создать объект";
КонецЕсли;
Компонента = Новый("AddIn.Community.Mertech");
Если Компонента = Неопределено Тогда
ВызватьИсключение "Не удалось создать объект компоненты";
КонецЕсли;
Ревиз = Компонента.ПолучитьРевизиюИнтерфейса();
Сообщить("Ревизия: "+ Ревиз);
//Подключение
Компонента.УстановитьПользовательскийПараметр("Ip", "192.168.0.101");
Компонента.УстановитьПользовательскийПараметр(2, "1111");
Компонента.УстановитьПользовательскийПараметр(3,"1234");
Компонента.УстановитьПользовательскийПараметр(4,"12345");
Описание="";
ДемоРежим="";
ИдентификаторУстройства = "";
Компонента.Подключить(ИдентификаторУстройства);
Компонента.ТестУстройства(Описание, ДемоРежим);
Сообщить("Описание: "+ Описание);
Сообщить("ДемоРежим: "+ ДемоРежим);
//Получение названия магазина
Компонента.УстановитьПользовательскийПараметр("StringNumber", 1);
Компонента.ВыполнитьПользовательскоеДействие(18);
ИмяМагазина = "";
//Компонента.ПолучитьПользовательскийПараметр("ShopName", ИмяМагазина);
Если(Компонента.ПолучитьВыходнойПараметр(181, ИмяМагазина)) Тогда
Сообщить(ИмяМагазина);
Иначе
Сообщить("Параметр не найден");
КонецЕсли;
//Запись нового названия магазина
Компонента.УстановитьПользовательскийПараметр("StringNumber", 1);
Компонента.УстановитьПользовательскийПараметр("ShopName", "Пример названия");
Компонента.ВыполнитьПользовательскоеДействие(19);
//Отправка файла и установка параметра с типом двоичных данных
Компонента.УстановитьПользовательскийПараметр("FilePath", ПолучитьДвоичныеДанныеИзСтроки("D:\test.csv", КодировкаТекста.UTF8));
Компонента.УстановитьПользовательскийПараметр("FileType", 4);
Компонента.ВыполнитьПользовательскоеДействиеНаУстройстве(ИдентификаторУстройства, 48);