Methods for Outgoing BODs

The following table lists the methods that are needed for sending BODs from LN.

Outgoing BOD Required Methods
Request BODs (Process, Sync, Load, Post, Update) PublishEvent, Show; when sending Process or Get BODs, the OnAcknowledge is also needed for handling the incoming reply BOD (see section Methods for Incoming BODs).
Reply BODs (Acknowledge, Confirm) none

To be able to send request BODs, the business interface (BI) must offer the PublishEvent method. In the model and its implementation, the developer must make sure that the method complies with the Business Data Entity Implementation Standard and Event Management Standard.

The Show method is needed to enable the LN application to publish BODs using ShowAndPublish<Verb>BOD methods.

For BODs, publishing is done from the LN application, so the application must be adapted to be able to publish the required events. See Publishing BODs from the LN Application.

The PublishEvent method can be used to publish the following events (or a subset): Process, Sync, Load, Post, and Update. It is not needed to publish Confirm or Acknowledge events through the business object, because those BODs are created automatically while processing an incoming request BOD.

The table provides an overview for the events that can be sent and how this is done:

Publishing Method Event Action(s) Outgoing BOD (Verb)
PublishEvent Process Process
Sync Sync
Load Load
Post Post
Update Update
ShowAndPublishProcessBOD n/a Process
ShowAndPublishSyncBOD n/a Sync
ShowAndPublishLoadBOD n/a Load
ShowAndPublishPostBOD n/a Post
ShowAndPublishUpdateBOD n/a Update

When using PublishEvent, both the verb (eventAction) and actionCode are explicitly specified by the sending LN application.

When using ShowAndPublish<Verb>BOD, a separate publishing function exists for each verb.

Note: In case of BDE change events, each business object and component instance will have an actionType attribute to indicate the action at that level. The actionType will be ‘create’, ‘change’, ‘delete’ or ‘unchanged’. These action types are not allowed for BODs according to the OAGIS XSDs, so they are not included. This implies however that part of the semantics will be lost.

For the BOD, the interpretation might be:

  • If only identifiers are included for a business object or component then the action type is ‘delete’.
  • Otherwise the action type is undefined (it may be create, change or unchanged). When using a protected Change method to process the BOD, the createOrChange action type may be useful (see Action Types).

To summarize, the following picture shows the flow for a typical ‘to bus’ scenario.

LN sends a Process BOD and after some time (asynchronously) can receive an Acknowledge BOD. Although technically two things happen at the application server (sending a BOD and receiving a BOD), functionally this is a single scenario.