Skip to content

SAP-samples/btp-event-mesh-connectivity-bridge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

REUSE status

Integrate Events Between SAP and Microsoft using SAP Event Mesh Connectivity Bridge Service

Description

SAP Event Mesh Connectivity Bridge Service is a fully-managed cloud service for enabling applications, integrations and extensions to communication asynchronously through events. Events are significatnt changes in state(for example, Purchase Requisition updated in SAP S/4HANA).

SAP Event Mesh Connectivity Bridge service's integration with Azure Event Grid enables SAP World to send events to Microsoft Azure. In this tutorial, you will be using the Beta version of SAP Event Mesh Connectivity Bridge service which enables direct connection between SAP BTP Event Mesh to Azure Event Grid. You can develop event driven integrations and applications using this service.

Note: Currently you will be using beta version, soon it will be available in global account as a service SAP Integration Suite.

Table of Contents

Scenario
Solution Architecture
Requirements
Implementation: Configuration and Development
Additional Resources
Known Issues
Reference
Disclaimer
How to Obtain Support
Code of Conduct
Contributing
License

Scenario

A SAP Business user creates a SAP Purchase Requisition in SAP S/4HANA which generates an event. The event gets published into a topic of SAP Event Mesh from which the event gets transported to Azure Event Grid’s partner topic. A queue bound with this partner topic (through Event Subscription) receives the event.

Solution Architecture

alt

  1. Purchase Requisition gets created in SAP S/4HANA system. This change creates a notification event with the Purchase Requisition ID in the payload.
  2. This event is sent to the SAP Event Mesh.
  3. SAP Event Mesh instance with connectivity bridge service plan have two connectors (Azure Event Grid & S4-on-premise) which are configured in subscription as publisher and subscriber. This subscription pushes the event to Azure Event Grid.
  4. Microsoft Azure Storage Account's queue receives the events. You can use queue storage when you have a long running process that takes too long to respond.
  5. When a new item is received in the queue, the azure function is triggered with the message in the queue as an input.
  6. The Azure Function App calls the Azure communication service with queue message.
  7. Azure Communication Service sends email notification to the configured business user.

Requirements

These are the technical prerequistics for an setting up integration between SAP Event Mesh and Azure Event Grid for SAP S/4HANA event.

  1. A SAP BTP's subaccount in US20 region. Make sure the BETA feature for the subaccount is enabled.
    • Create a service ticket in https://jtrack.wdf.sap.corp using the "Event Mesh - Enterprise Messaging" component to share the details of the subaccount, so that SAP can allow to create an instance of event-mesh-connectivity-beta plan in your subaccount.
  2. SAP S/4HANA 2020(MQTT Adapter) or SAP S/4HANA 2021+(AMQP Adapter) system to act as an event publisher.
  3. Microsoft Azure subscription with Azure Event Grid instance. you can opt Azure trial version also.

For more information, refer to Get Started with Event Mesh Connectivity Plan (Beta).

Configuration and Development

Follow the below steps to configure SAP S/4HANA, SAP BTP and Microsoft Azure System for the scenario. Based on the installation type of SAP S/4HANA, please follow the documentation for configurations related to connectivity in SAP BTP.

Step 1: Set Up the Subaccount in SAP BTP
Step 2: Configure Microsoft Azure Platform
Step 3: Onboard Connectors in SAP BTP
Step 4: Configure SAP S/4HANA
Step 5: Configure Event Subscription in Microsoft Azure
Step 6: Create Microsoft Azure Function App
Step 7: Test Application

Additional Resources

In this project, the Microsoft Azure function app has been implemented based on the following samples.

Known Issues

  • In RFC Destination creation in Step 4 Editing the port number through SM59 transaction is a temporary solution which will not be required when the service goes LIVE.

Reference

Event Mesh Connnectivity Bridge

Azure Event Grid

Azure Functions

Azure Communication services

Disclaimer

This project has been a proof of concept, including several limitations and prerequisites. The objective was to build end-to-end flow with a new event connector from SAP Event Mesh to Azure Event Grid. For this reason, the implementation should not be seen as any recommendation for production. It fulfils the purpose and requirements of a proof of concept and is not intended for productive usage. It has been declared as pure proof of concept only to give the development teams ideas for solving potential challenges.

How to obtain support

Create an issue in this repository if you find a bug or have questions about the content. For additional support, ask a question in the SAP Community..

Code of Conduct

Refer to CODE OF CONDUCT file.

Contributing

If you wish to contribute code, offer fixes or improvements, send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.

Refer to the CONTRIBUTING file for guidelines to contributions from external parties.

For additional support, ask a question in the SAP Community.

License

Copyright (c) 2022 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0, except as noted otherwise in the LICENSE file.

About

Enable integration of SAP events to Microsoft Azure with SAP Event Mesh Connectivity Bridge and Azure Event Grid

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published