В этом разделе описано, как происходит инициирование событий в бизнес-логике Navision, а также приведены краткие сведения о некоторых предпосылках и применяемой терминологии.
Бизнес-объект — наименование, используемое в Business Notification для представления реальных объектов, например заказов продаж.
Однако в Navision бизнес-объекты, такие как заказы продаж, обычно представляются в виде ряда таблиц, включающего, по крайней мере, таблицу заголовка и таблицу строк. Кроме того, некоторые данные, которые должны быть в обычном бумажном заказе продаж, хранятся в связанных таблицах. Например, в заказе продаж Navision таблица заголовка содержит Код Формулы Оплаты. Это поле имеет табличную связь с полем Формула Оплаты (являющимся внешним ключом в терминах реляционных баз данных). Тем не менее на распечатке подтверждения заказа (в отчете) текст из связанной таблицы используется для того, чтобы получить более удобное для чтения представление сроков платежа ("1 месяц/2% 8 дней" вместо "1М(8Д)".)
Таким образом, отчет Navision уже представляет собой, в некотором смысле, "бизнес-объект". Однако бизнес-объекты, относящиеся к Business Notification, создаются в Navision в виде объектов XMLport.
Объекты XMLport — новое средство в Navision 4.0. Коротко говоря, они предоставляют средства создания XML-документа из одной или нескольких таблиц способом, до некоторой степени аналогичным способу создания отчета. В документации системы Navision приведены подробные сведения о разработке объектов XMLport вообще.
Для системы Business Notification введено расширение объектов XMLport, позволяющее передавать такой XML-документ в Business Notification из кода C/AL.
Для этой цели используется событие. Событие служит двум целям:
Во-первых, если в Navision для какого-либо объекта XMLport определено событие, это событие можно вызывать аналогично функции. Однако в событии отсутствует тело функции. При вызове события выполняется отправка в Business Notification XML-документа, которому "принадлежит" событие объекта XMLport.
Во-вторых, в конструкторе Business Notification события служат для связи между разработчиком C/AL и разработчиком схемы Business Notification. Выбор удачных имен событий, четко описывающих обстоятельства, в которых эти события инициируются в коде C/AL, существенно облегчает разработчику схемы выбор способа управления событиями, настройки фильтров, внутренних пользователей, которым следует предоставить право на подписку, заголовка и описания данной схемы, предназначенного для внутренних пользователей, работающих с приложением подписки и внешних получателей, которым следует отправить уведомление.