Имя: Пароль:
1C
1С v8
WebService RFID. Внешнее событие на форме 1С
0 Tihon_aka_kot
 
05.08.19
20:37
Всем привет. Думаю на реализацией одной задачи:
Есть устройство которое сканирует rfid метки и может передать их данные на вебсервис.
Задача пользователю на форме (конкретному пользователю на конкретной форме) выводить эти данные (хотя бы просто Сообщить(Данные)).
Как опубликовать вебсервис и как получить данные я знаю. А вот как найти ту самую открытую форму того самого пользователя - пока нет.
Есть придуманый на ходу костыль: записывать данные в какойто объект и забирать их оттуда подключи обработчик ожидания на форме. Но хотелось бы сделать решение по типу внешнего события, как сканер ("scanData") например.
Какие есть идеи?)
1 palsergeich
 
05.08.19
20:40
(0) веб сервисы - механизм сервера.
Можно сделать через систему взаимодействия, она может с сервера вызвать клиент.
Или ВК.
2 ДенисЧ
 
05.08.19
20:43
N-ный пошёл...
3 Tihon_aka_kot
 
05.08.19
20:52
(2) Эта тема уже гдето обсуждалась?
4 Tihon_aka_kot
 
05.08.19
20:52
(1) ВК - это что?
5 ДенисЧ
 
05.08.19
20:54
(3) Нет. Тебе первому пришла в голову гениальная идея звать клиента с сервера. И никто раньше до такого не додумывался. И даже (1) никто никогда не придумывал.
6 Tihon_aka_kot
 
05.08.19
20:59
(5) хорош агриться и рассказывай дальше)
придумывали то что именно? как решали эту задачу? есть какие то примеры (прикладные)?
7 Garykom
 
гуру
05.08.19
20:59
(0) ВК которая умеет pulling или webhooks по http
8 palsergeich
 
05.08.19
21:00
(4) внешняя компонента
9 Tihon_aka_kot
 
05.08.19
21:00
(7) интересно. Спасибо. Погуглю
10 Garykom
 
гуру
05.08.19
21:01
(7)+ В тестовом варианте я такую ВК на С++ и Golang уже наваял.
Кто хорошо знает C++ для интеграции 1С через ВК с Golang
11 Tihon_aka_kot
 
05.08.19
21:02
(10) но в 1с же есть механизм оповещения на клиент. Может заюзать его (знать бы еще как)?
12 Garykom
 
гуру
05.08.19
21:03
13 palsergeich
 
05.08.19
21:30
1с dialog в рамках подписки ИТС
14 Tihon_aka_kot
 
05.08.19
21:42
а если костылями?:
мы же можем писать идентификатор открытой формы куда то (в РС например).
А с сервера после того как получим данные находить эту форму по этому идентификатору и выполнять какое то оповещение.
Можем же?
15 palsergeich
 
05.08.19
22:03
(14) можно, но при большом количестве пользователей - аукнется, потому что интервал будет маленький, порядка секунды и будет бешеная нагрузка на сервер.
Если пользаков мало то имеет шанс на жизнь
16 palsergeich
 
05.08.19
22:03
(15) а интервал будет маленький потому что считывание длинною в минуту никому не нужно
17 Garykom
 
гуру
05.08.19
22:04
(14) Нельзя с сервера, клиент должен дергать.

Простейше это ОбработкаОжидания() на форме.
18 palsergeich
 
05.08.19
22:05
(17) ну про обработку ожидания ещё в топикстарте написано
19 Garykom
 
гуру
05.08.19
22:05
(17)+ Если не хочется чтобы код на 1С постоянно крутился по таймеру, то можно в ВК вынести этот цикл по таймеру или поднять в ВК веб-сервер (раньше делали tcp/ip подключение) и при входящем http (откуда то извне) делать внешнее событие в форме.
20 palsergeich
 
05.08.19
22:06
(18) при единицах таких рабочих мест - реализуемо.
При десятках - не очень здорово серверу будет
21 palsergeich
 
05.08.19
22:07
(19) я думаю если бы он мог в ВК, вопрос бы не стоял, что то мне говорит что срок сдачи вчера и времени нет)
Ну по тому как идёт тема - все указывает на это
22 Garykom
 
гуру
05.08.19
22:09
Имхо надо мануал от устройства читать, что оно умеет.
23 Tihon_aka_kot
 
05.08.19
23:22
(21) не, как раз только изучаю материал. Сроков пока никаких не давал.
(22) устройство умеет только стучаться на вебсервис (остальные его возможности не интересны).

скорее всего буду делать через обработчик ожидания. Чем это чревато? насколько он стабильно будет ожидать и обрабатывать?)
24 Tihon_aka_kot
 
05.08.19
23:26
(21) где в документации к БПО видел "вебсервис оборудования". Сталкивался с таким?
25 Tihon_aka_kot
 
05.08.19
23:28
(19) т.е. как бы компонента публикует вебсервис а не сама 1с, правильно понял? а мы эту компоненту подключаем как любую другую при создании формы, так?
Если так  - то оч интересно, но хз как реализуемо)
26 Garykom
 
гуру
05.08.19
23:43
http://catalog.mista.ru/public/327266/

Но нет исходников и огромный минус что порт случайным образом из свободных назначается.
27 Tihon_aka_kot
 
06.08.19
10:59
А кто знает, как работает оповещение при включении/отключении функциональной опции? Пример: открыл форму РТУ, поле организация скрыто, т.к. ф-я опция "несколько организаций" отключена. Пока открыта форма - пошел включил эту опцию, вернулся на форму - и поле организация появилось. значит сработал какой то механизм оповещения отрытых форм?
28 palsergeich
 
06.08.19
11:51
(27) Обновить интерфейс()
29 palsergeich
 
06.08.19
11:51
Это метод глобального контекста перерисовывает все формы
30 palsergeich
 
06.08.19
11:55
(29) но так же нужно понимать что перерисовка пройдет только в том сеансе, где эта ФО была изменена, во всех остальных сеансах открытые формы останутся без изменений
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший