Let's begin by considering the following scenario:
You're an employee of a company that manufactures interior components for cars. The company exports goods to foreign countries. Along this supply chain, day-to-day and exceptional risks can significantly influence the export business. These risks should be continuously identified and monitored. Therefore, the company decides to manage the risks in a new application.
Your company manages all business processes via an SAP S/4HANA Cloud system. Custom extensions within the system itself, so-called "in-app extensions", only meet individual requirements to a certain extent. For the required risk management application, the company decides to implement a "side-by-side extension" because they offer more flexibility than "in-app extensions".
The "side-by-side extensions" are developed using different types of development tools and services on the SAP Business Technology Platform (in short, SAP BTP).
The new risk-management application should be developed using the SAP Business Application Studio (BAS) on SAP BTP. There are several options and runtime environments available:
- SAP BTP, ABAP Environment
- SAP BTP, Cloud Foundry runtime
- SAP BTP, Kyma runtime
Before choosing a runtime, it is essential to familiarize yourself with the level of knowledge in your development department. If the developers only have ABAP knowledge, the decision for an extension written in ABAP, which in the end, runs on the ABAP environment in the cloud, is obvious.
To continue the scenario mentioned above, your development team consists mainly of developers with Node.js knowledge. Therefore, the company decided to develop an extension with SAP's Node.js-based Cloud Application Programming Model (CAP) (https://cap.cloud.sap/docs/node.js/). The deployment will take place on the SAP BTP, Cloud Foundry Environment.
As part of your development team, you will develop a CAP-based application for risk management.
Outlook on the Tech Stack and Final Application
Here is a summary of what the stack looks like for the risk management application:
- Front-End
- SAP Fiori Elements is used for the user interface.
- Back-End
- SAP Cloud Application Programming Model (CAP) is used to model the database entities, implement the business logic and to define the OData service.
- API
- OData REST API. The OData endpoint is generated by the CAP application.
- Database
- SAP HANA Cloud on SAP BTP.
This is what entry point of the final application looks like:
If you choose a single entry in the list, you will be redirected to the detail page:
Considering the above scenario, your end user should be able to create, edit, and delete risks from the list page. Each risk has the properties of impact and priority based on each risk's potential for damage.
Note
Be aware that we cannot provide a full SAP S/4HANA Cloud system for this course. Therefore, we decided to use the SAP Business Accelerator Hub SAP S/4HANA Sandbox, which provides the same OData API for business partners as a real SAP S/4HANA Cloud system.
Troubleshooting
In case you encounter any problems during the course, we suggest re-reading the corresponding exercise steps carefully. If this still doesn't help, post a question into our SAP BTP Learning Community Group.
What's next?
The following lessons will guide you through an end-to-end development process from development to automated deployment.