Introducing Cloud Integration

Objectives

After completing this lesson, you will be able to:

  • Describe the complete Integration Flow process which we will implement in the next exercises

Introduction to Cloud Integration

In this Lesson, the Following Topics are Discussed:

  • What Is SAP Cloud Integration?
  • Key Features.
  • Explore predefined Integration Content in SAP Business Accelerator Hub.

What Is SAP Cloud Integration?

The following statements try to answer the question:

  • SAP Cloud Integration support end-to-end process integration through the exchange of messages.
  • It is based on the open source framework Camel from the Apache Software Foundation.
  • It is one of the core capabilities of the SAP BTP Integration Suite.
  • The development, deployment, and monitoring takes place in the browser with graphical tools.
  • It is one of the LowCode/No Code tools.

Key Features

An integration flow has 0-1 sender adapter. The message is delivered via an endpoint if an adapter is configured. A variety of different sender adapters are available on the sender side. (No. 1) After receipt of the message, the process is started via a startup event Start. This is followed by predefined processing steps. (No. 2) There is a wide range of integration capabilities that define different ways that messages can be processed on the integration platform. Ultimately, receiver adapters can be configured to complete the business process. Message processing can be carried out synchronously or asynchronously. With this concept, a lot of well-known enterprise integration patterns can be mapped.

Connectivity

The sender and receiver adapters are different. You are able to build your own adapter. To do this, you can use the provided Software Development Kit.

To determine which adapters are really available depending on your license, you can display the adapters after creating an empty project template, as described in the following exercise. Perform the following steps:

  1. Start with an editable empty project template:
  2. Draw a line from the channel to the Start event. The available adapters are displayed:
  3. Proceed with the same procedure on the recipient's side:

Integration Capabilities

They categorized the integration capabilities. Among them are the predefined processing steps. An integration flow now combines the individual capabilities to, for example, map a technical process. There are almost no limits to the possibilities of combination. To examine all available integration capabilities with the assigned individual steps, you can start again with the empty process template. You will find the tool palette on top of your screen. Every icon describes an functionality in to the cloud integration user interface.

In the following case, this becomes visible at the transformation capability.

Predefined Integration Content

As indicated above, the art of combining the integration capabilities in such a way that it becomes a professional process. The integration flows can be quite complex. SAP offers over 400 predefined integration flows that can be consumed.

There are two ways to investigate the predefined integration content. A path directly via the Integration Suite will be shown at the end of the course. The other variant is described below.

Explore Predefined Integration Content in SAP Business Accelerator Hub

All available predefined integration content is listed in the SAP Business Accelerator Hub, depending on the products to be integrated.

Procedure

The following steps must be carried out in order:

  • Open the SAP Business Accelerator Hub at: API.SAP.com
  • Navigate to the Discover Integrations tab.
  • Choose the first product.
  • Choose the second product which will be integrated with the first one.
  • Find all available predefined integration content as an integration package, based on your selection.
  • Navigate deeper in an integration package and find all available integration flows.
  • Navigate deeper in an integration flow to find out the complete configuration.

Further details about the steps:

  1. Discover the Integrations tab:
  2. Choose the first product, for example, SAP S/4HANA:
  3. Choose the second product, for example, SAP SuccessFactors:
  4. Navigate to an integration package, for example, SAP SuccessFactors Employee Central Integration with SAP ERP or SAP S/4HANA, Employee Data:
  5. There is only one integration flow available. Navigate to this integration flow:

Here, you will find all the information to understand this integration flow:

  • The configurations of all steps
  • The business documentations
  • And more

To consume this integration package or integration flow, you have to use the Discover menu within the Integration Suite. This is shown by the example of the Examples at the end of the exercises.

Sources

Read more:

Summary

Individual integration flows are compiled via predefined functional steps. These are divided into categories such as mapping, routing, and others, and provided as a palette. The process is started via exactly one incoming message. The contents of this message can then be manipulated in a variety of ways in the process itself. The connectivity and flexibility comes from many sender and receiver adapters. In addition to creating the individual integration flow, SAP offers over 400 predefined integration flows, as they are often needed in the SAP environment.

Describe the iFlow Process Created in the Next Exercises

Business Scenario

The fully implemented exercise scenario is presented in the following picture, to help you understand the process as a whole.

To describe the most important functions, the process is divided into 8 significant steps, with several additional functions incorporated.

Task Flow

In this exercise, you will perform the following steps in one task:

  1. Send a List with ProductIDs as SOAP message to the integration flow.
  2. Iterate over the Product List.
  3. Check each ProductID to see if it is available in the database.
  4. Decide whether the ProductID exists in the database or not.
  5. Get the SalesOrderLineItems (SalesOrderID, ItemPosition) as a feed for each ProductID.
  6. Iterate over the SalesOrderLineItems result.
  7. Select for every SalesOrderLineItems (SalesOrderID, ItemPosition) entry the SalesHeader (CustomerID).
  8. In every SalesHeader, select the Customer ID and write it to a datastore.

What do you Learn Within this Exercise?

In theory, you will learn the integration flow process for the entire exercise.

Task 1: Prepare the Next Exercises

Steps

  1. Send a list with ProductIDs as a SOAP message to the integration flow.

    1. Send an XML message list via HTTPS and SOAP message to the deployed integration flow. The Message Exchange Pattern is One-Way ( asynchron, fire, and forget).

    2. The XML message contains the ProductIDs, for example HT-1000.

      Code snippet
      <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
          <soapenv:Header/>
          <soapenv:Body>
              <List>
                  <Product>
                      <ProductID>HT-1000</ProductID>
                  </Product>
                  <Product>
                      <ProductID>HT-1020</ProductID>
                  </Product>
                  <Product>
                      <ProductID>HT-1023</ProductID>
                  </Product>
                  <Product>
                      <ProductID>HT-1035</ProductID>
                  </Product>
              </List>
              
          </soapenv:Body>
      </soapenv:Envelope>
      Expand
  2. Iterate over the Product List.

    1. Each ProductID from the list is processed individually, one after the other.

    2. For example, if the list has five ProductIDs, the following processing steps are executed five times (loop five times)

  3. Check each ProductID to see if it is available in the database.

    1. Call the following URL:

      Code snippet
      https:// < your host >/v1/GWSAMPLE_BASIC/ProductSet('< ProductID >')
      Expand
      Code snippet
      
      for example:
      https://group00-xxxxxxxx-yyyyyy.prod.apimanagement.eu10.hana.ondemand.com/v1/GWSAMPLE_BASIC/ProductSet('HT-1000')
      Expand
    2. The ProductID comes from the product list.

    3. If a ProductID, for example, HT-1000 exists in the database, the following response will be returned.

      Code snippet
      <ProductSet>
      <Product>
      <Category>Notebooks</Category>
      <ProductID>HT-1000</ProductID>
      <Name>Notebook Basic 15</Name>
      </Product>
      </ProductSet>
      Expand
  4. Decide whether the ProductID exists in the database or not.

    1. If the response is empty, the current loop will be terminated and the next one will be started.

    2. If the ProductID is available, then the response will be further processed.

  5. Get the SalesOrderLineItems (SalesOrderID, ItemPosition) as a feed for each ProductID.

    1. Get the SalesOrderLineItems (SalesOrderID, ItemPosition).

      As a feed for each ProductID with the following URL.

      Code snippet
      https://< host >/v1/GWSAMPLE_BASIC/ProductSet('< ProductId >')/ToSalesOrderLineItems?$select=SalesOrderID,ItemPosition,DeliveryDate
      
      for example:
      https://group00-cld900-d052537.prod.apimanagement.eu10.hana.ondemand.com/v1/GWSAMPLE_BASIC/ProductSet('HT-1035')/ToSalesOrderLineItems?$select=SalesOrderID,ItemPosition,DeliveryDate
      Expand
    2. A feed is provided as a response. Below is an example with one entry.

    3. There may well be several thousand entries.

    4. The important properties are SalesOrderId and ItemPosition.

    5. You can determine the number in advance with the following URL.

      Code snippet
      https://< your host >/v1/GWSAMPLE_BASIC/ProductSet('< ProductID >')/ToSalesOrderLineItems/$count
      
      for example:
      https://group00-cld900-d052537.prod.apimanagement.eu10.hana.ondemand.com/v1/GWSAMPLE_BASIC/ProductSet('HT-1035')/ToSalesOrderLineItems/$count
      Expand
  6. Iterate over the SalesOrderLineItems result.

    1. Each SalesOrderLineItems entry is processed individually, one after the other.

    2. Configuration of the iteration.

  7. Select for every SalesOrderLineItems (SalesOrderID, ItemPosition) enter the SalesHeader (CustomerID).

    1. Call the following URL. The SalesOrderID and ItemPosition came from the last API call.

      Code snippet
      https://< host >v1/GWSAMPLE_BASIC/SalesOrderLineItemSet(SalesOrderID='< SalesOrderId >',ItemPosition='< ItemPositoion >')/ToHeader?$select=CustomerID,CustomerName,DeliveryStatus
      
      e.g:
      https://group00-cld900-d052537.prod.apimanagement.eu10.hana.ondemand.com/v1/GWSAMPLE_BASIC/SalesOrderLineItemSet(SalesOrderID='0500000001',ItemPosition='0000000040')/ToHeader?$select=CustomerID,CustomerName,DeliveryStatus
      Expand
    2. An XML is provided as a response. Below is an example with one entry.

    3. The important response property is CustomerID of the orderer.

  8. In every SalesHeader, select the CustomerID and write it to a datastore.

    1. Select the CustomerID and write it to the data base.

    2. As a result, a Data Store is created in cloud integration that links Customer IDs to the list of delivered ProductIds.

    3. Below is the data store with the customer IDs matching the list.

    4. The generated list can now undergo further processing, with the API used to identify the products and communication data associated with each Customer ID, allowing the customers to be promptly informed of any potential delays.

Explore the Cloud Integration

Business Scenario

You are interested in learning how to construct an integration flow using the cloud integration.

Task Flow

In this exercise, you will perform the following tasks:

  1. Log on to the Cloud Integration.
  2. Explore the Cloud Integration.

Prerequisites

  • You have a working Integration Suite.
  • You have a working Cloud Integration.

Outcome After This Exercise

You have acquired some preliminary experience with Cloud Integration.

What do you Learn Within This Exercise?

Get familiar with the key navigation elements in cloud integration and their functions.

Exercise Options

To carry out this exercise, you can choose from the following options:

  1. Live Environment: Using the instructions provided below, you can perform the steps in your SAP BTP account.
  2. Platform Simulation: Follow the step-by-step instructions within the simulation.
  3. Side-by-side: Follow the step-by-step instructions within the simulation and perform the steps in your SAP BTP account simultaneously.
Note
We strongly recommend to perform the steps in the live environment.

Task 1: Log on to the Cloud Integration

Steps

  1. Log on to the Integration Suite.

    1. Navigate to your subaccount to Instances and SubscriptionsIntegration Suite.

    2. Now navigate to the individual areas.

Task 2: Explore the Cloud Integration

Steps

  1. Explore the Discover area.

    1. Navigate to DiscoverIntegrations.

    2. You will find all available pre-defined integration scenarios here, just as you would in the SAP Business Accelerator Hub.

  2. Explore the Design area.

    1. Navigate to DesignIntegrations.

    2. This is the most important development area, where you can create, deploy and manage integration flows and other artifacts.

  3. Explore the Monitor area.

    1. Navigate to MonitorIntegrations.

    2. Here you can manage:

      • Monitor Message Processing
      • Manage Integration Content
      • Manage Security
      • Manage Stores
      • Access Logs
      • Manage Locks
  4. Explore the Settings area.

    1. Navigate to SettingsIntegrations.

    2. Here you can manage:

      • Product Profiles
      • Transport Capabilities
      • ES Repository
      • Custom Tags
      • Malware Scanner
      • Software Updates
  5. Find more information within the online guide.

    1. Access the online guide via user symbolOnline Guide.

    2. You can navigate through every area here to access further information.

Log in to track your progress & complete quizzes