Добрый день.
Задача: к компьютеру будут подключены весы (кол-во весов не известно). Подключение через com-порты. Необходимо считывать показания весов и записывать в базу. Запись должна вестись в автоматическом режиме без участия пользователей.
Реализовал запись через регламентные задания.
Регламентное задание срабатывает каждые 5 секунд.
База серверная.
Все срабатывает. Но в момент
ПринятыеДанные = ComPort.Input
MrIgor @ Сегодня, 10:41
,
Как вы определяете, что данные не попадают?
Попытался себе представить как регламентное задание на сервере читает ком-порт клиента.
Признаться, ниасилил.
McTSIMCO @ Сегодня, 17:51
,
регламентное задание читает com-порт сервера. Оборудование подключено к компьютеру, который является сервером 1С
andr_andrey @ Сегодня, 17:06
,
Вот так
andr_andrey @ 04.03.20, 16:12
,
Спасибо за вариант, но это не помогло.
Работают 2 варианта (они, в принципе идентичны по смыслу):
1. Используется свойство библиотеки mscomm InBufferCount
ПринятаяПосылка = "";
// Wait until 10 bytes are in the input buffer
Пока ComPort.InBufferCount < 200 Цикл
КонецЦикла;
ПринятаяПосылка = ComPort.Input;
ПринятаяПосылка = "";
ОбщегоНазначенияВызовСервера.Подождать(2); // выполняется пауза на указанное к-во секунд
ПринятаяПосылка = ComPort.Input;
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua