Event Publishing Usage

There are different types of usage for event publishing:

  • Event handling: use events from LN to take action in another application.
  • Synchronization: use events from LN to synchronize business data in another application or database.

Event handling is required when an application must be notified of a specific event in LN. For example, the creation of a new sales order, the completion of a production order, or the blocking of a customer. In that case the PublishChanges can be used. Events on a specific business object are published and can be processed by, for example, a workflow application.

Synchronization is a type of integration where the involved sites or applications have an overlap in persistent data. For example, in addition to an ERP application containing item (product) data, a customer relationship management application is used that also contains product information.

Basically, two approaches exist for this type of integration:

  • Regularly re-sending the complete data set containing all relevant instances of the business objects.
  • In change-based synchronization, instead of re-sending the whole data set regularly, the target applications receive change events, such as create, change or delete for those object instances that were changed. In this case a one-time synchronization of all relevant instances of the business objects is done in order to get a baseline, followed by synchronization of relevant changes whenever they occur.

You can implement the first approach by regularly issuing a PublishList request, which will send the requested data set. You can implement the second approach by using a combination of PublishList and PublishChanges.