Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
knutheusermann
Product and Topic Expert
Product and Topic Expert
The SAP Business Technology Platform (BTP) provides an environment to build and run full-stack applications on a trusted enterprise-grade platform.
Running such applications side-by-side to SAP solutions such as S/4HANA Cloud, SAP Business ByDesign and SAP Business One requires in particular that these apps fit to the SAP standard and deliver a seamless user experience across solutions and applications.

For this goal we benefit from technology alignments supported by BTP services and programming models, such as for example:

  • a consistent concept of openness based on OData APIs and standardized business events,

  • secure and harmonized approaches for process integration, API-led integration, event-based integration and data integration,

  • a central identity and access management based on the SAP Identity Authentication Service,

  • a consistent business object design supported by a model-driven development approach and reuse components,

  • a harmonized look & feel with UI floorplan patterns based on Fiori Elements, UI5 and the SAP Launchpad,

  • and consistent implementations of SAP product standards.


The GitHub repository “Partner Reference Application” provides a sample application that is based on these BTP qualities and showcases a seamless frontend and back-channel integration with SAP Business ByDesign.

The repository provides two approaches to get started and to explore BTP capabilities:

  1. Deploy and run the sample application as provided and explore the features and the code

  2. Re-build the application from scratch following detailed step-by-step tutorials and an incremental development approach



Partner Reference Application on GitHub


The Partner Reference Application is a tool for your kick-start for application development on the BTP. If you want to go beyond this BTP use case and explore all other capabilities of the BTP, then the following resources are excellent entry points:

  •  "Capire", the home of the SAP Cloud Application Programming Model (CAP) provides you all details of the programming model that we used in our sample application.

  • The SAP Discovery Center is your one-stop shop for all SAP BTP resources. Access the mission catalog to find use cases and tutorials, and check out the service catalog if you are interested in specific BTP services.

  • Explore the learning journey Discover SAP Business Technology Platform and many more on the SAP Learning site to get familiar with the BTP and all its 4 pillars Application Development, Integration, Data and Analytics, and AI and Automation.

12 Comments
knutheusermann
Product and Topic Expert
Product and Topic Expert

Update: Sample application and tutorials enhanced to support multi-tenancy.

The main branch now contains a second multi-tenancy enabled version of the sample application.

The tutorials

  1. Enhance the BTP Application for Multi-Tenancy

  2. Deploy the Multi-Tenant Application to a Provider Subaccount

  3. Provision Tenants of the Multi-Tenant Application to Customers

explain how to transition from the single-tenant sample application to the multi-tenant application version.

Incremental development from one-off to multi-customer solutions

kostadin_terziev
Participant

Hello, Knut and Thanks for the post.

I have tried going through the tutorials both building the application from scratch and also cloning and deploying it.

Neither of those ways works for me.

Because the tutorials are outdated. For example the Launchpad Service is no longer called like that, it is now SAP Build Work Zone.

The plans in the tutorial that we have to choose like default, standard etc. are not always available in a Trial account. This makes it impossible to follow through these tutorials.

I think the tutorials and documentation have to be updated and also adapted for people with Trial accounts. Also it would be very nice to have a video tutorial on YouTube for the whole process.

Regards,

Kostadin

knutheusermann
Product and Topic Expert
Product and Topic Expert
Hi Kostadin,

first of all: thanks a lot for your efforts to explore our sample application and for your feedback 🙂

The announcement of SAP Build and related service naming changes created a task on my to-do-list already and I took your comment as trigger to tick-off this task (you find the changes in our work-in-process branch "s4hc-int").

Regarding the BTP trial account, I'm fully with you, that it would be beneficial to have a version of the sample application that can be built and deployed on a BTP trial account as well. However, currently we are focusing on the integration with S/4HANA Cloud to illustrate the possibility of multi-tenant and multi-backend partner applications. Nevertheless I took note of your ask for future planning discussions.
kostadin_terziev
Participant
0 Kudos
Hi Knut,

Thank you for your consideration.
knutheusermann
Product and Topic Expert
Product and Topic Expert
0 Kudos

Update: Sample application and tutorials enhanced to support multiple backends and S/4HANA Cloud.

The multi-tenant version of the sample application has been enhanced by an integration with S/4HANA Cloud. Now the sample application supports ByD project management and S/4HANA enterprise projects at the same time. In result the application owner (partner) can provision tenants to ByD and S/4 customers and connect the application tenant to the preferred project management system of the customer.

Furthermore, both the single-tenant version and the multi-tenant version of the sample application have been refactored to allow adding ERP backend types as compatible enhancements with little effort. The sample app demonstrates that approach by adding the integration with S/4HANA Cloud while having live application subscriptions with ByD integration.

The tutorials

  1. Integrate the BTP Application with S/4HANA Cloud, public edition
  2. Connect a Tenant to S/4HANA Cloud, public edition

explain how to transition from a multi-tenant application to a multi-backend application and how to provision an application tenant with S/4HANA Cloud integration.

Expand market reach by supporting multiple backend solutions

knutheusermann
Product and Topic Expert
Product and Topic Expert

Update: BTP versions, 3rd-party integration and Cloud for Projects.

Today we published new version of the "Partner Reference Application" to the 'main'-branch of the GitHub-repository with significant changes:

  1. We updated all package versions of the sample applications (single-tenant version and multi-tenant version).
  2. We enhanced the multi-tenant version of the sample application by a service broker and an example to expose OData APIs for 3rd-party integrations. We added a Postman collection with examples about how authenticate and consume CAP OData services as well.
  3. We added an integration with S/4HANA Cloud for Projects, collaborative project management (C4P) as a further example for a backend system.
  4. We added further tutorials and details incl. a bill of materials.
kevinzhu03
Advisor
Advisor
0 Kudos

Hi Knut,

Thank you for the excellent post. I noticed that there are concrete examples of connecting a tenant with various systems like ByD/S4HC/C4P, but there's no example of connecting it with another BTP application.

Are there any plans to include an example that covers a scenario where both the 'project management application' and the 'author reading management application' are deployed on BTP, but in different global accounts? In this case, the partner application could still access the OData API provided by the main application in ways of technical user and principal propagation.

We are in the process of developing a new application on the BTP platform and are interested in enabling our partners to build extension applications also on BTP. We would greatly appreciate any insights, suggestions, or best practices from those who have had mature experiences in this area like you.

 

Regards,

Kai

 

knutheusermann
Product and Topic Expert
Product and Topic Expert
Hallo Kai,

thanks a lot for your feedback 🙂
C4P is a BTP-based application and our example for a connection between two BTP-based apps in different global accounts. I'm happy to meet for a conversation and to hear your feedback.

Best regards,
Knut
kevinzhu03
Advisor
Advisor
0 Kudos
Hi Knut,

 

I checked the C4P part in detail and find it to be a valuable reference for us on how to expose a BTP application to partners. I'll thoroughly examine it and conduct some experiments before reaching out to you if any new questions arise.

Thank you for your prompt response!

 

Best Regards,

Kai
kevinzhu03
Advisor
Advisor
0 Kudos
Hi Knut,

 

As this section says:
"In our scenario the partner BTP application shall consume the OData services of C4P using an OAuth 2 SAML bearer authentication flow and we need to confure a trust relationship between the BTP app consumer subaccount and the C4P consumer subaccount."

I have two questions:

  1. Does this mean for a customer, there needs to be two different consumer sub accounts, one subscribes the BTP partner application, and another subscribes the C4P application? Could the partner application and the C4P application both be subscribed in a single customer sub account?

  2. To consume the OData services of C4P, is it mandatory to setup the SAML trust? Could the partner BTP application access the C4P api via service broker without setting the trust?


Thanks a lot in advance!

 

Best Regards,

Kai
knutheusermann
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hallo Kai,

in general, the subscription of SAP applications happens in the customer global account, whereas the subscription of partner applications happens in the partner global account (this what we refer to as "partner-managed applications").

This means, the C4P subscription is done in a subaccount of the customer global account, and the subscription of the partner app requires a subaccount (for the customer) in the partner global account.

If you have two partner applications of the same partner, then you can subscribe them both in the  same consumer subaccount of the partner global account.

If you have two partner applications of different partners, then you have again two consumer subaccounts, one in each of the two partner global accounts.

Best regards, Knut
kevinzhu03
Advisor
Advisor
0 Kudos
Hi Kunt,

 

Understood now. Thanks a lot!

 

Best Regards,

Kai