Имеются весы ВН-150-А. В 1С 7.7 вес автоматически передается. Сейчас интегрируем с 1С8 УПП. Как вывести вес на форме обработки? Какой алгоритм действий? Помогите!!!
Библиотека "MSCOMMLib.MSComm.1" подключена.
Pavlik1c @ Сегодня, 14:53 ,
Самый простой способ - посмотреть, как это сделано в 1С 7.7
И ещё, если хотите написать свой драйвер (обычно он предоставляется производителем весов или продавцом), то в инструкции к весам есть полное описание режимов работы индикатора (обмен) и протоколов обмена.
Скан из инструкции смогу выслать, если не найдёте сами.
ЧтениеВесов_ВН150()
Перем Стабил, Ожидание, ТекВес;
CountPass = 0;
Стабил = 1;
Попытка
Пока Стабил <>0 Цикл
глОбВесы.Output = "<"+симв(3)+"!>";
Ожидание = 0;
Пока глОбВесы.InBuffrCount < 10 Цикл
Задержка(1);
Ожидание = Ожидание +1;
Если Ожидание > 300 Тогда
Предупреждение("Нет ответа от весов. Устраните неисправность!") +РазделительСтрок+" Осталось попыток: " (3-CobntPass));
Прервать;
КонецЕсли;
КонецЦикла;
Если глОбВесы.InBufferCount <> 10Тогда
Clr = глОбВесы.Input;
CountPass = CountPass +1;
Если CountPass > 3 Тогда
Если Вопрос("Нет ответа от весов!!! Перейти на ручной ввод веса?", 4, 15)= 6 Тогда
CloseComPort()
Прервать;
Иначе CountPass = 0;
КонецЕсли;
КонецЕсли;
Продолжить;
КонецЕсли;
Если СтрВесЗнач(глОбВесы.Input) = 1 Тогда
Стабил = Стабил - 1;
Иначе
Стабил = 10;
КонецЕсли;
КонецЦикла;
КонецПопытки;
КонецПроцедуры;
Pavlik1c @ Сегодня, 12:16 ,
Ищите, что есть "глОбВесы", каким объектом переменная инициализируется.
...
глОбВесы = СоздатьОбьект("MSCOMLib.MSComm.1");
глОбВесы.ComPort = NumCom;
глОбВесы.Settings = "9600, N,8, 1";
глОбВесы.Rthreshold = 1;
глОбВесы.InputLen = 0;
Попытка
глОбВесы.PortOpen = 1;
Исключение
Предупреждение ("Не могу открыть порт");
Возврат
КонецЕсли
КонецПроцедуры
...
глОбВесы.Output = "<"+Символ(3)+"!>"
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua