Skip to Content

Deploy and Run the Incident Management Application in the SAP BTP, Cloud Foundry Runtime with SAP S/4HANA Cloud Backend

Requires Customer/Partner License
This tutorial shows you how to prepare your application, deploy it as a Multitarget Application (MTA), and test it with SAP S/4HANA Cloud connectivity.
You will learn
  • How to connect to your SAP S/4HANA Cloud system.
  • How to extend the existing MTA build file with the settings for the SAP S/4HANA Cloud extension service.
  • How to test the application with your SAP S/4HANA Cloud system.
slavipandeSvetoslav PandelievAugust 27, 2025
Created by
slavipande
June 17, 2024
Contributors
slavipande

Prerequisites

This tutorial follows the guidance provided in the SAP BTP Developer’s Guide.

  • Step 1

    First, you create a service instance for the SAP S/4HANA Cloud Extensibility service with plan api-access. The SAP S/4HANA Cloud system provides pre-defined communication scenarios that contain one or multiple APIs. When creating the service instance, the communication scenario needs to be specified along with some configuration. Under the hood, a communication arrangement based on the given scenario is created in the SAP S/4HANA Cloud system.

    1. Create a new file bupa.json in the root folder of the project and paste the following code snippet in it:

      json
      Copy
      {
          "systemName": "<SYSTEM_NAME>",
          "communicationArrangement": {
              "communicationArrangementName": "<COMM_NAME>",
              "scenarioId": "SAP_COM_0008",
              "inboundAuthentication": "BasicAuthentication",
              "outboundAuthentication": "BasicAuthentication",
              "outboundServices": [
                  {
                      "name": "Replicate Customers from S/4 System to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Replicate Suppliers from S/4 System to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Replicate Company Addresses from S/4 System to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Replicate Workplace Addresses from S/4 System to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Replicate Personal Addresses from S/4 System to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Business Partner - Replicate from SAP S/4HANA Cloud to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Business Partner Relationship - Replicate from SAP S/4HANA Cloud to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "Business Partner - Send Confirmation from SAP S/4HANA Cloud to Client",
                      "isServiceActive": false
                  },
                  {
                      "name": "BP Relationship - Send Confirmation from SAP S/4HANA Cloud to Client",
                      "isServiceActive": false
                  }
              ],
              "communicationSystem": {
                  "communicationSystemHostname": "default.com",
                  "outboundCommunicationUser": {
                      "username": "DefaultUser",
                      "password": "DefaultPassword"
                  }
              }
          }
      }
      
      • For systemName, enter the name of your registered SAP S/4HANA Cloud system. For example, SAP S/4HANA DEV System.
      • For communicationArrangementName, enter a name for the communication arrangement that is created for the SAP S/4HANA Cloud tenant. For example, INCIDENT_MANAGEMENT_0008.

      For more information, see Communication Arrangement JSON/YAML File - Properties.

    2. Navigate to the package.json file in the root folder of the application. Add the [production] profile credentials (destination and path) to the settings for API_BUSINESS_PARTNER:

      json
      Copy
      "API_BUSINESS_PARTNER": {
          "kind": "odata-v2",
          "model": "srv/external/API_BUSINESS_PARTNER",
          "[production]": {
              "credentials": {
                  "destination": "incidents-api-access",
                  "path": "/sap/opu/odata/sap/API_BUSINESS_PARTNER"
              }
          }
      }
      
    3. Open the mta.yml file and add the following code snippet to the resources section:

      yaml
      Copy
      - name: incidents-api-access
        type: org.cloudfoundry.managed-service  
        parameters:
          path: ./bupa.json
          service: s4-hana-cloud
          service-plan: api-access
          system-name: <system-name>
      

      For system-name, enter the name of your registered SAP S/4HANA Cloud system. For example, SAP S/4HANA DEV System.

    4. In the mta.yml file, make sure that the line - name: incident-management-destination is added to the requires section of the incident-management-srv module:

      yaml
      Copy
      - name: incident-management-srv
        type: nodejs
        path: gen/srv
        requires:
        - name: incident-management-auth
        - name: incident-management-db
        - name: incident-management-destination
      ....
      
  • Step 2
    1. Log in to your subaccount in SAP BTP:

      bash
      Copy
      cf api <API-ENDPOINT>
      cf login
      cf target -o <ORG> -s <SPACE>
      

      You can find the API endpoint in the Overview section of your subaccount in the SAP BTP cockpit.

    2. Run the following commands to build and deploy your project in the SAP BTP, Cloud Foundry runtime:

      bash
      Copy
      mbt build
      cf deploy mta_archives/incident-management_1.0.0.mtar 
      
  • Step 3

    When creating new entries in the Incident Management application, you see all values from your SAP S/4HANA Cloud system in the value help of the Customer field.

    Before you continue with this step, don’t forget to perform the steps from the tutorials Assign the User Roles and Integrate Your Application with SAP Build Work Zone, Standard Edition.

    1. Open your SAP Build Work Zone, standard edition site as described in Integrate Your Application with SAP Build Work Zone, Standard Edition.

    2. Choose the Incident Management tile.

      Incident Management tile on the launchpage
    3. Choose Create to start creating a new incident.

      Create a new incident
    4. Open the value help for the Customer field.

      Value help for Customer field
    5. Verify that customer data is fetched from the SAP S/4HANA Cloud system.

      Data in value help

    Congratulations! You have successfully developed, configured, and deployed the Incident Management application using an external service and an SAP S/4HANA Cloud system.

    What is the name of the JSON file that holds all communication arrangement properties for the Incident Management application?

Back to top