After completing this lesson, you will be able to:
Explain what event sources are
Define standard events and custom events
Explain the difference between outbound events and inbound events
Describe which event sources are available for SAP Integration Suite, advanced event mesh
Explain selected event sources
An Overview of the Event Sources
As introduced in the Unit Introducing the Event-Driven Architecture, SAP provides many events originating from different event-enabled back-ends. With the overview you got in this Unit in mind, let’s take a closer look at the different event sources.
As a rule of thumb, most events are exposed following the CloudEvents standard , that aims to describe events in a common format across vendor boundaries. As you can see in the figure above, the event sources are manifold: SAP S/4HANA, SAP S/4HANA Cloud or SAP Marketing Cloud, just to name a few. One of the main differences between them is that some contain standard SAP events and others contain custom add-on events. So, what is the difference between standard events and a custom events?
Standard and Custom Events
Standard events are provided by SAP Business Applications/back-ends as part of the SAP standard. They can be looked up at the SAP Business Accelerator Hub or in the SAP SuccessFactors Intelligent Services documentation. For some back-ends, standard events are adjustable, for others they are not. One thing to keep in mind is that adjustable standard events are the way to go as they allow event-driven architectures to scale.
Custom events can be created by customers to address use cases for which standard events are not available. There are several tools available for creating custom events, which vary from back-end to back-end. Typical tools are the event-enablement add-on or the ABAP RESTful Application Programming Model (RAP)-based approach to creating custom events. Thus, custom events can be completely tailored to the specific needs of your company and are therefore an addition to the standard events. One thing to keep in mind is that a custom event-only approach doesn’t scale, but there will always be events missing in the standard.
Outbound and Inbound Events
Another important distinction between the event sources is whether the back-end supports inbound or outbound events. What does this mean?
Outbound (from a back-end perspective) means that an SAP back-end is the event source and exposes events. Today, this is the 90% case. What happens with outbound events is that there is some load on the back-end to create and expose the events.
Inbound (from a back-end perspective) means that an SAP back-end is the event consumer. Today, this is the 10% case.
Available Event Sources
Now, when linking the standard/custom events and outbound/inbound events topics, it is important to point out, that standard outbound events can be enabled with a single click, but custom outbound events have to be created with no code to pro code approaches. For inbound events, pro code development efforts are required because they must be specified in terms of what they are supposed to do when they receive an event. Therefore, it is often an easier approach to call an API.
Let’s take a closer look at selected event sources and how they differ from each other:
Details About Selected Event Sources
Custom only: SAP ERP exposes custom events only by using the SAP NetWeaver, add-on for event enablement. It is the powerful add-on from SAP for SAP NetWeaver® and SAP S/4HANA systems . This add-on to SAP ABAP systems operates within the established SAP infrastructure and allows to enhance or create custom content (extractors, formatters) and connectors. By doing that, it uses highly scalable techniques to bring customer data and events into the cloud, for example, event-based triggers, delta loads/change pointers, parallel data processing (in multiple SAP work processes), and data splitting. It also supports interface clustering for efficient provisioning to multiple cloud application, and Business Application Programming Interface (BAPI) calls for data selection are possible. Additionally, it includes notification and data events and allows for inbound and outbound events. The add-on is available with SAP Event Mesh, which means that no additional license is required.
Standard and Custom: SAP S/4HANA Cloud and SAP S/4HANA expose around 600 standard notification events and are documented in the SAP Business Accelerator Hub.
These standard events are based on RAP and can be adjusted and extended accordingly. Therefore, events are an integral part of the programming model, as seen below:
RAP-based events can be notification and data events and can be used inbound and outbound. SAP S/4HANA can also incorporate custom add-on events.
The event structure for a RAP-based event looks like the following (here exemplified for the business event "SalesOrder.Changed":
If you want to create RAP Business Events, check out this documentation.
Standard only: SAP SuccessFactors solutions provides the Intelligent Services Events, that can be integrated into SAP Event Mesh. These events can be adjusted and therefore, be notification or data events, as needed. However, SAP SuccessFactors solutions doesn’t support custom events, but support JSON and SOAP formats. The CloudEvents format is planned for future releases.
Summing Up
SAP provides a variety of event sources from different event-enabled back-ends, with most events exposed following the CloudEvents standard. The event sources include SAP S/4HANA, SAP S/4HANA Cloud, SAP Marketing Cloud, and SAP SuccessFactors solutions, and more. Standard events are provided by SAP Business Applications/back-ends, while custom events can be created by customers to address specific use cases. The distinction between outbound and inbound events is important, with outbound events being the most common.
SAP NetWeaver, add-on for event enablement is the available tool for creating custom events. SAP S/4HANA and SAP S/4HANA Cloud expose standard notification events and can incorporate custom add-on events, while SAP SuccessFactors solutions provides Intelligent Services Events that can be fed into SAP Event Mesh.