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: 
FlorianFarr
Explorer
This blog post explains how to connect SAP ECC or S/4HANA on-prem and private cloud editions with Confluent Cloud or Confluent Platform.
Whether you're using SAP NetWeaver Event-enablement Add-on or ASAPIO Integration Add-on, this step-by-step guide provides all you need as a first step to enable SAP systems for communication with a Confluent broker.

Architecture / Connection types


When connecting SAP with Confluent, it is important to understand that there are two very different approaches in terms of connection architecture.

Using a REST Proxy


"Confluent REST Proxy for Kafka" or a similar product is the standard approach currently and therefore can be considered mandatory for the connectivity.
Please see https://github.com/confluentinc/kafka-rest for details.

Reason for using REST instead of AMQP is, that SAP ECC does not support streaming protocols and 3rd-party-libraries cannot be used in SAP-certified Add-ons.


SAP-to-Confluent Architecture



Direct connect/V3:


A Connector for Confluent Cloud direct connect (V3 REST API) is available as pre-release in the download section for registered ASAPIO customers. This connector can only handle outbound connectivity at the time of this blog being published (November 2023). For inbound connectivity, the REST proxy approach above is still required.

AMQP support:


AMQP support is planned to be released by ASAPIO in 2024, for S/4HANA systems.

System prerequisites


Before diving into the integration process, make sure you have the following components available:

Software components required on your SAP system



  • SAP NetWeaver Event-enablement Add-on (SAP Event Mesh Edition)

  • or, alternatively, ASAPIO Integration Add-on - Framework (full version)

  • ASAPIO Connector for Confluent (using REST proxy)


For direct connect/V3 REST API, a pre-release Connector for Confluent Cloud is available for registered ASAPIO customers.

Non-SAP components


Please make sure you have endpoint URI and authorization data at hand for:

  • Confluent Components:

    • Confluent REST Proxy for Kafka (More info)

    • Confluent Cloud

    • Or, alternatively Confluent Platform




Licensing

All software above requires the purchase of appropriate licenses.

Set-up Connectivity


1. Create RFC Destinations to Confluent REST Proxy


Transaction: SM59

Type: "G" (HTTP Connection to External Server)

Target Host: Endpoint of Confluent REST Proxy

Save and perform a "Connection Test" to ensure HTTP status code 200.



2. Set-up Authentication to REST Proxy


Pre-requisites: Obtain user and password for the REST proxy or exchange certificates with the SAP system.

Transaction: SM59

Choose the correct RFC destination, go to "Logon & Security," and select authentication method:

  • "Basic Authentication" with username and password

  • SSL certificate-based authentication



 

3. Set-up Basic Settings


Activate BC-Sets: Use SCPR20 to activate BC-Sets for cloud adapter and codepages.

Configure Cloud Adapter: In SPRO, go to ASAPIO Cloud Integrator, Maintain Cloud Adapter, and add an entry for the Confluent connector.

4. Set-up Connection Instance


Transaction: SPRO or /ASADEV/68000202

Add a new entry specifying connection details, RFC destination, ISO code, and cloud type.

5. Set-up Error Type Mapping


Create an entry mapping response codes to message types.



6. Set-up Connection Values


Maintain default values for the connection to Confluent in Connections -> Default values.



















Default Attribute Default Attribute Value
KAFKA_ACCEPT application/vnd.kafka.v2+json
KAFKA_CALL_METHOD POST
KAFKA_CONTENT_TYPE application/vnd.kafka.json.v2+json
(or application/vnd.kafka.jsonschema.v2+json)



Set-up Outbound Messaging


1. Create Message Type


Transaction: WE81

Add a new entry specifying a unique name and description for the integration.



2. Activate Message Type


Transaction: BD50

Activate the created message type.



3. Set-up additional settings in 'Header Attributes'


Configure the topic, fields for the key, and schema IDs for key/value schemas.



4. Set up 'Business Object Event Linkage'


Link the configuration of the outbound object to a Business Object event.

Send a "Simple Notifications" event for testing


1. Create Outbound Object Configuration


Transaction: SPRO or /ASADEV/68000202

Select the created connection and go to Outbound Objects.

Add a new entry specifying the object, extraction function module, message type, load type, and response function.

2. Test Outbound Event Creation


In the example above, please pick any test sales order in transaction /nVA02 and force a change event, e.g., by changing the requested delivery date on header level.

3. Check monitor transaction for actual message and payload


Access to monitor application
User must have PFCG role /ASADEV/ACI_ADMIN_ROLE to access Add-On monitor.

Use transaction /n/ASADEV/ACI_MONITOR to start the monitor.
You will see the entry screen with a selection form on top.



Congrats, you are now able to send data out to Confluent.

In the next blog, we will create a custom payload for the event.
1 Comment
Labels in this area