Имя: Пароль:
1C
 
1С:Шина. 1 запись sql таблицы = 1 сообщение
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
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший