The main intent of this scenario is to complement an existing business process in an SAP solution – currently SAP S/4HANA with additional business process steps. This involves adding major logic and/or additional data and goes beyond simple UI changes.
This application showcase:
- Building application on SAP Cloud Platform(CP) using SAP Cloud Application Programming Model(CAP)
- Consuming events from SAP S/4HANA on premise using SAP Cloud Platform Enterprise Messaging
- Consuming REST APIs from SAP S/4HANA on premise using SAP Cloud Platform Connectivity Service
- Building and deploying a function in SAP Cloud Platform Serverless Runtime
A business scenario is used to showcase how to build a S/4 HANA on premise extension Application on SAP CP.
John who is an employee of Business Partner Validation Firm iCredible, which is a third-party vendor of ACME Corporation would like to get notifications whenever new Business Partners are added in the S/4HANA backend system of ACME Corporation. John would then be able to review the Business Partner details in his extension app. He would proceed to visit the Business Partner’s registered office and do some background verification. John would then proceed to update/validate the verification details into the extension app. Once the details are verified, the Business Partner gets activated in the S/4HANA system of ACME Corporation.
-
Custom extension application that works independently from S/4HANA.
-
Changes in S/4 communicated via events in real time to extension application.
-
Compute intensive processing available on demand (serverless environment).
-
Vendor personnel needs access to only custom app
The Business Partner Validation application is developed using SAP Cloud Application programming Model (CAP) and runs and runs on the SAP Cloud Platform Cloud Foundry Environment. It consumes platform services like Enterprise Messaging, SAP HANA and Connectivity. The events generated in S/4 HANA on premise are inserted into the Enterprise messaging queue. The application running in Cloud Foundry polls the queue for these messages and inserts them into the HANA database. The Business Partner Validation Application also uses S/4 HANA REST API's to read data from Business Partner Data from S/4 HANA system. The Business Partner Validation App also places the processed events into a Enterprise Message Queue from where a Serverless Application consumes it and posts it back to S/4 HANA on premise system using OData provisioning.
- SAP S/4HANA on premise system.
- SAP Cloud Platform account
- Node js
- Cloud Foundry Command Line Interface (CLI)
- Visual Studio Code
- cds-dk
- SQLite
- To build the multi target application, we need the Cloud MTA Build tool, download the tool from here
- For Windows system, install 'MAKE' from https://sap.github.io/cloud-mta-build-tool/makefile/
- multiapps plugin -
cf install-plugin multiapps
- mbt -
npm install -g mbt
The application requires below set of SAP Cloud Platform Entitlements/Quota
Service | Plan | Number of Instances |
---|---|---|
Enterprise Messaging | default | 1 |
SAP HANA Schemas & HDI Containers | hdi-shared | 1 |
SAP HANA Service | 64standard | 1 |
Application Runtime | 1 | |
Extension Factory Runtime | 1 |
You can use SAP Cloud Platform - Boosters to setup the subaccount. Boosters Will create the subaccount with the required entitlements, subscriptions and assign the required roles to your user to run this application. Steps to run the booster are provided in link. You can create subaccount manually also following link
- Open terminal in VSCode
- Run
cds watch
-
Build the application
mbt build -p=cf
-
Login to Cloud Foundry by typing the below commands on command prompt
cf api <api> cf login -u <username> -p <password>
api
- URL of the Cloud Foundry landscape that you are trying to connect to.Select the org and space when prompted to. For more information on the same refer link.
-
Deploy the application
Navigate to mta_archives folder and run the below command from CLI
cf deploy BusinessPartnerValidation_1.0.0.mtar
-
In the command line interface run the command
cf apps
-
Find the URL for the app
BusinessPartnerValidation-ui
- this is the launch URL for the Business Partner Validation application. -
Launch the URL in a browser.
-
The list of BusinessPartners along with their verification status gets displayed.
-
Login to the S/4HANA on-premise system
-
Move to the status tab and check mark the 'Central Block' lock. Save the BP. This will create a new Business Partner
-
Now go back to the BusinessPartnerValidation application to see if the new BusinessPartners has come on the UI
-
Go to the details page for the new BusinessPartner. Click on edit.
-
Change the Verification Status to VERIFIED. You can also edit the street name, postal code also if needed. Save the data.
-
Open S/4HANA system, bp transaction. Search for the newly created bp
-
The serverless application has also uploaded a QR code for the address details of the BP to the S/4HANA system. You can view this by clicking on the icon in the top left corner. You will have to give permission for downloading the image.
-
You can also notice that in the BusinessPartner Validation UI, the status is now set as COMPLETED.
No known issues.
In case you find a bug, or you need additional support, please open an issue here in GitHub.
Copyright (c) 2020 SAP SE or an SAP affiliate company. All rights reserved. This file is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.