Skip to Content
Product Information
Author's profile photo Murali Shanmugham

Enable your business to operate in real-time with SAP Event Mesh of SAP Business Technology Platform

Event-Driven Architecture (EDA) is gaining more popularity these days as businesses are looking to leverage it to become more agile, flexible, and scalable. Over the last few years, there has been lot of focus within SAP to enable organizations to adopt Event-Driven Architectures with processes that touch SAP & 3rd party systems. There are plenty of articles online which describe the significance of an Event-Driven Architecture for enterprises today. In this blog post, I want to touch upon the key enhancements and point you to some of the assets to get started.

Some of you might have heard of SAP Enterprise Messaging service on SAP Business Technology Platform (BTP). This has been renamed early this year to SAP Event Mesh as outlined by Martin Bachmann in his blog post.

When this service was first introduced around 2018, it was used more as messaging service. I have published a blog post highlighting the use as a messaging service – “React to events and connect 3rd Party systems using Serverless services & Open Connectors”. Since then there has been lot of work which has happened to support customers with adopting an event-Driven Architecture with SAP solutions. For example,  the support of Out-of-box event enablement framework for S/4HANA and SuccessFactors standard business objects.

Feel free to browse through the Business Events for the below solutions in API Business Hub

  • S/4HANA on-premise & Cloud
  • SAP Marketing Cloud Business Events
  • SAP Subscription Billing Business Events

Here is a blog post which describes the event handling from an S/4HANA system. With this approach, you can work with the standard events which SAP provides and integrate them with Event Mesh. These types of events are called “Notification Events”.

                                                Notification event originating for S/4HANA systems

  1. A Sales Order gets updated in S/4HANA system. This change creates a notification event. Notice the payload only has few fields to indicate the update action and the Sales Order ID.
  2. This event is sent to the Event Mesh
  3. The consuming applications receive this event
  4. Based on the type of event which has been received, the consuming application might want more information of the event from S/4HANA system. Hence, there is a synchronous call back to the S/4HANA system via SAP Integration Suite to obtain more attributes of the sales order which has been updated.

Sometime last year, I had few requests from customers who were looking to embrace EDA, but one of their concerns was the need for the consuming application to initiate a synchronous call to fetch additional data.

Notification events are a good choice when you are dealing with large number of events which are small and you want to have more control on the data which is being shared with consuming applications. All the synchronous API calls from the consuming applications will need to be properly authenticated to gain access to the additional data. On the other hand, its not efficient if you are having large number of API calls to fetch additional event data. In some scenarios, there might not be relevant APIs and it might need to be built.

Back in July 2020, SAP announced the availability of Event-driven architecture for SAP Business Suite systems. This was possible via an ABAP add-on “SAP NetWeaver, add-on for event enablement” offered by the SAP Partner ASAPIO. The usage of this add-on with SAP BTP is included in the subscription of SAP Event Mesh. If you are an SAP Business Suite customer, you can subscribe to SAP Event Mesh and use this add-on to build your event-driven architectures.

 

There are many blog posts which can help you get started here. For example, follow the post “SAP Enterprise Messaging for SAP ERP: HowTo-Guide” – Part 1 & Part 2.

Here is an extract of some of the key features of this add-on

  • Allows to enhance or create custom content (extractors, formatters) and connectors
  • Uses highly scalable techniques to bring customer data and events into the cloud
    • event based triggers
    • delta loads / change pointers (Change Data Capture)
    • parallel data processing (in multiple SAP work processes)
    • data splitting
  • BAPI calls for data selection are possible
  • Supports outbound AND inbound data flows
  • Code-less for simple requirements + Custom code option for complex requirement

 

As you can see, this provides more options when dealing with events. You can create triggers for custom objects/events, push additional data as part of the event payload, support inbound events in your SAP systems and the best part is that you leverage the No-Code tooling.

At SAPPHIRE 2021, SAP announced further updates on Event based integration. Little did I realize the power of this add-on at that time. In June 2021, this add-on was released for S/4HANA systems too, making it now possible for customers to trigger events on custom objects and do much more than what was possible before.

One of the key capabilities which I wanted to emphasize with this add-on is the concept of “Data Events”. Unlike the Notification events, the data event can contain the full dataset of the business object for which the change has happened. This is great choice when the consuming application needs full data set in majority of the cases. Though this reduces the need for an additional API call, it does increase the resource consumption on all parties and it also require analysis of any sensitive data which is being shared with consuming applications.

 

                                                Data event originating for S/4HANA systems

  1. A Business Partner gets created in S/4HANA system. This change creates a data event. Notice the payload has more fields than just the BP ID. Using the Table views, the add-on is able to extract additional properties and transform them to JSON format.
  2. This event is sent to the Event Mesh
  3. The consuming applications receive this event

 

Another interesting capability of the add-on is how you can easily sync the event payload in SAP Business Suite system to align with the Cloud events 1.0 specification used in SAP S/4HANA. This is very handy when you want to future proof your extension applications when you move from SAP Business Suite to S/4HANA later. This has been demonstrated by Syed Ejazuddin on this blog post Sync SAP ECC Event Payload with SAP S/4HANA through SAP NetWeaver Add-On for Event Enablement

Don’t forget to check out the Discovery Center Missions to learn more about SAP Event Mesh. For SAP Business Suite customers who are keen to use the “SAP NetWeaver, add-on for event enablement”, follow this Discovery center mission as it walk you through all the required steps along with access to Github link where you will get access to the source code to try out the extension applications.

If you are looking for examples of how customers are using Event Mesh and the Integration Suite capabilities, I would recommend to watch this SAP Community Call where Sika go through multiple use cases including the use of SAP Event Mesh & Integration Suite with SAP & 3rd party solutions.

Possibilities are endless once you have set the foundation with EDA. Another common requirement we see is around approvals. End users typically approve work items accessing their SAP system. User now want to be instantly notified across multiple channels – Web apps/Mobile apps/collaboration tools like Microsoft Teams and approve from either of them.  Here is a demo which shows how the ASAPIO Add-on and the Connector for Microsoft Azure enables you to easily build mighty scenarios, code-less to approve SAP purchase order sent to Microsoft Teams channel.

 

 

 

Assigned tags

      4 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Syed Ejazuddin
      Syed Ejazuddin

      Thanks for the mention and a really great blogs post 🙂

      Author's profile photo Pankaj Yadav
      Pankaj Yadav

      Hi Murali,

      Thanks for writing this blog.

      Can we compare the event mesh with IDOC? i mean .. i have a requirement to get IDOC on BTP ABAP but am not sure how IDOC can be consumed there but event mesh can be consumed.

      Let me know if you have any solution

      Author's profile photo Murali Shanmugham
      Murali Shanmugham
      Blog Post Author

      Hi Pankaj,

      I have not tried using IDOCs with BTP ABAP environment. Can you please raise this as a question in the forum to see if any of the experts can provide suggestions. Thanks

      Author's profile photo Pankaj Yadav
      Pankaj Yadav

      Thanks murali.

      i have raised this in community.