Электронные весы.
☑
0
antihacker
19.03.17
✎
09:11
Всем привет !
Есть электронные весы CAS Model CL500J.
Не могу подключить к 1С 8,2.
Вот код
Это при открытие формы
Попытка
ЗагрузитьВнешнююКомпоненту("C:\Program Files\ATOL\Drivers\Bin\Scale1C.dll");
ProgID="AddIn.Scale45";
ПодключитьВнешнююКомпоненту(ProgID);
scale=Новый(ProgID);
Исключение
Сообщить("Не удачно !);
КонецПопытки;
Здесь вроде нет проблем.
А вот далее
scale.IP="192.168.0.81";
scale.Port=2000;
scale.Type = 3;
//Подключаемся к весам
scale.Open();
//Задаем параметры товара
scale.pluType=1; //весовой товар
scale.pluNumber = 2; // номер товара
scale.pluDept = 1; // номер отдела
scale.pluName1 = "Тестовый товар1"; // Название товара
scale.Price = 100012; // Цена – 1000 руб, 12 коп.
//Загружаем в весы параметры товара
scale.SendPLU();
пишет
Поле объекта не обнаружено (IP)
scale.IP="192.168.0.81";
Что не так ?
1
antihacker
19.03.17
✎
09:12
Ой CAS Model CL5000J.
2
Волшебник
модератор
19.03.17
✎
09:30
ошибка в строке
scale=Новый(ProgID);
3
antihacker
19.03.17
✎
09:33
проверил
AddIn.Scale45
в реестре есть
4
antihacker
19.03.17
✎
09:34
А вообще вот пример
scale = Новый СОМОбъект("CAScentre_DLL_printScale.Scale");
except
Message("Not init dll CAScentre_DLL_printScale");
return;
endtry;
Message("Init dll...ok!");
try
scale.IP = "172.21.1.58";
scale.Port = 20304;
scale.Type = 3;
scale.Open();
scale.InitData();
scale.pluNumber = 1;
scale.pluDept = 1;
scale.pluName1 = "name1";
scale.pluName2 = "name1";
scale.pluPrice = 123456;
scale.pluType = 1;
scale.pluStrLogo = "1";
scale.pluGroupCode = 1234;
scale.pluItemCode = 987654;
scale.pluFixedPrice = 0;
scale.pluWeightTare = 0;
scale.pluDatePack = 0;
scale.pluTimePack = 0;
scale.pluDateLife = 0;
scale.pluTimeLife = 0;
scale.pluNumberMsg = 1;
scale.pluTextMessage = "0";
scale.pluNumberLabel = 0;
scale.pluNumberBarcode = 0;
scale.pluDateCreate = 0;
scale.pluTextNumber = 0;
scale.pluTextNumber = 0;
scale.pluLP16logoNumber = 0;
scale.pluSYmbol = 0;
scale.pluExtPCS = 0;
scale.pluExtOrigin = 0;
scale.pluExtBar2 = 0;
scale.pluExtFixedWeight = 0;
scale.SendPlu();
except
Message("Error code #"+scale.ResultCode);
return;
endtry;
scale.Close();
Message("Result - ok!");
Но СОМОбъект нету в 8,2
5
Vladal
19.03.17
✎
09:45
Попробуйте в подставил точку останова на строке, где присваивается ip.
И посмотрите отладчиком поля этого объекта — есть ли там ip или нет.
Я таким образом исследовал компоненту почтовой службы.
6
antihacker
19.03.17
✎
09:48
Есть.
7
scaramouche
19.03.17
✎
13:11
(0) у Атола есть примеры. Там совсем никак нельзя посмотреть?
8
antihacker
19.03.17
✎
13:32
Я от туда и беру
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший