Подсказка

Драйвер разработан в соответствии с требованиями к разработке драйверов подключаемого к 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);