Data change events and subscription are available in Calem Enterprise R2019b. Administrators can register 3rd-party applications as listeners in Calem. These listeners are notified when records are changed in Calem.

Step 0. What is a Data Change Event

A data change event is a user action to update data including creation, editing, and deletion.

Data change subscription and Calem REST API enable customers to build two-way integration with Calem. This blog discusses the steps to set up event listeners in Calem.

Step 1. Data Change Event Setup

A data change event can be created for Calem to generate data change stream for a table.

  • Menu path: Admin module | Open | Data Change Event
  • Table name defines the table that the data change events should be generated.
  • Track Attributes: use this flag to track changes of category attributes
  • Track Selected: use this flag to track changes of selected base and custom fields defined in the "Field" tab.
  • Optionally track edit, create and delete events.
  • The Sync checkbox will send data change events as part of the data change transaction.
    • This option is useful if you are building a real-time integration and want the user changes to fail if another application reject the changes.
    • Otherwise, the data change events are placed in a queue and will be sent to other applications later as a cron job.

 Step 2. Event Listeners

Event listeners are 3rd-party REST web services.

  • Menu path: Admin module | Open | Data Change Listeners
  • Client Id and Secret are used in the invocation of the REST web service that listens to Calem data change events.
  • Client URL is the web service address.
  • See Calem Enterprise API Guide for more information about authentication and JSON data encoding in building web service listeners.
  • Listeners are then assigned to subscribe to events.

Step 3. Events and Notification

Once events and listeners are configured the notification process is executed periodically to send events to listeners.

  • Menu path: Admin module | Open | Event Queue
  • Data change events are queued for notification
  • Data field can be searched by list search row
  • Menu path: Admin module | Open | Event Notification
  • Event notification statuses are recorded in this list for one to review what events are notified or there are errors in the notification.