|
1С:Шина. 1 запись sql таблицы = 1 сообщение
novichok79, DemonShinji2, Telcher, Галахад, d4rkmesa, GenAcid, alexxx961503, ЕRPe, realptrm, Fedor-1971, Garykom, Академик_Келдыш, nick86, Prog_man, craxx, Zapal, RVN, trdm, ass1c, serpentt, Djelf, АнализДанных, denk32, Seriy_Volk, Мультук, Wefast, ADirks, Смотрящий, Valdis2007, b_ru
| ☑ |
0
Wefast
11.11.24
✎
09:40
|
Есть таблица sql
Есть ЗУП
Есть 1С шина
Необходимо из sql формировать сообщения и отправлять в ЗУП
Сейчас сделал схему. Источник = Таймер
После sqlconnector
В нем пишу запрос к таблице и добавляю в сообщение
В итоге в сообщение вся выборка из таблицы.
А хотелось бы в цикле формировать сообщения, чтобы было 1 запись из таблицы = 1 сообщение.
Но как это сделать понять не могу
|
|
1
Волшебник
11.11.24
✎
12:32
|
Сделайте запрос в цикле
|
|
2
Garykom
11.11.24
✎
13:21
|
(0) ПрограммныйИсточник
|
|
3
Wefast
11.11.24
✎
13:58
|
(2) Не понимаю, как он мне может помочь.
Схема какая будет в итоге и где будет запрос к таблице и формирование сообщения?
Сейчас: Таймер - sqlconnector - Канал1СПриемник - ГруппаУчастников
В sqlconnector есть "обработчик сообщения", там и заполняется сообщение из выборки
Разместить ПрограммныйИсточник после sqlconnector я не могу.
В самом "ПрограммныйИсточник" нет обработчика чего либо.
Примеры нашел только при работе с http сервисом, который будто бы и является источником формирования сообщений.
|
|
4
Wefast
11.11.24
✎
14:02
|
(1) В sqlconnector в обработчике который там доступен в параметрах уже есть сообщение.
Т.е. я думал, может в этом обработчике сделать свои сообщения.
пер МоеСообщение = Новый СообщениеИнтеграции()
МойСИ.ОтправитьСообщениеВУзлы(МоеСообщение,МойСИ.Схема.Узлы.???)
Вот вместо ??? должен быть доступен узел, но при моей схеме он не доступен.
|
|
5
d4rkmesa
11.11.24
✎
14:35
|
(0) Любопытства ради, а зачем вам формировать отдельные сообщения (кроме логики маршрутизации)? По идее Шина достаточно большие объекты может пропихнуть в очередь сервиса интеграции в 1С.
|
|
6
Garykom
11.11.24
✎
15:28
|
По таймеру делать запрос к sql источнику то еще извращение
Если хочется правильно - триггер на insert/update/delete
По нему кидать записи в отдельную табличку c id
По таймеру забирать минимальный id, создавать одно сообщение, удалять запись
Следующий вызов заберет следующую и новое сообщение
|
|
7
Wefast
12.11.24
✎
08:54
|
(5) начальству так захотелось.
(6) Схема в шине по сути останется той же как я понимаю, только в ОбработкаСообщения после чтения 1 записи - эту запись нужно будет еще удалить. Спасибо, интересный вариант.
|
|
8
novichok79
12.11.24
✎
10:17
|
поставьте kafka, там есть Confluent REST Proxy for Apache Kafka
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший