Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Murali_Shanmu
Active Contributor
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 ejaz123

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.



 

 

 
5 Comments
Labels in this area