Отправка сообщения без тела из информационной базы «Офис»
- В информационной базе Офис создайте обработку ЗапросОтчетов.
- Включите ее в подсистему ТоварныеЗапасы.
-
Создайте два реквизита у этой обработки:
- ВсеМагазины типа Булево,
- ВыбранныйМагазин типа СправочникСсылка.Подразделения.
- Создайте форму обработки.
- Поместите реквизиты в форму.
- Создайте команду ОтправитьЗапрос и разместите ее в форме:
- Напишите код обработчика команды:
&НаКлиенте Процедура ОтправитьЗапрос(Команда) ОтправитьЗапросНаСервере(); КонецПроцедуры &НаСервере Процедура ОтправитьЗапросНаСервере() Сообщение = СервисыИнтеграции.СервисОфиса.СоздатьСообщение(); // Для широковещательных сообщений код получателя должен оставаться пустым Если Не Объект.ВсеМагазины Тогда Сообщение.КодПолучателя = Объект.ВыбранныйМагазин.Код; КонецЕсли; Сообщение.Параметры.Вставить("ТипСообщения", "ЗапросОстатков"); СервисыИнтеграции.СервисОфиса.СетьМагазинов_ИзОфиса.ОтправитьСообщение(Сообщение); КонецПроцедуры
С помощью метода СоздатьСообщение() создается экземпляр сообщения.
В свойстве КодПолучателя указывается код информационной системы, именно этому участнику обмена «1С:Шина» будет доставлять сообщение. Важно, что код задается администратором сервера, поэтому в вашем примере коды записей справочника Подразделения должны совпадать с кодами участников в «1С:Шине».
Если свойство КодПолучателя не задано, то сообщение считается широковещательным и доставляется всем доступным получателям в соответствии со схемой процесса интеграции.
Затем создается параметр сообщения с именем ТипСообщения и в качестве значения ему устанавливается строка «ЗапросОстатков».
В простых случаях факт получения сообщения сам по себе может выступать в качестве триггера каких-то действий, тогда установка никаких дополнительных параметров не требуется. Однако при реализации реальных прикладных задач в один и тот же канал могут отправляться сообщения разных типов, а проверяя значение этого параметра на стороне получателя, вы сможете отличить такие сообщения друг от друга. Также при необходимости в параметрах сообщения можно передавать и другую полезную нагрузку, в качестве которой может выступать практически любое текстовое содержимое.
Далее с помощью метода ОтправитьСообщение() сообщение передается для отправки.