Hello Everyone,
Hope my intellectual SAP steered friends are doing well .
In this blog, we will learn how to configure Content Federation of SAP S/4HANA Cloud with SAP Build Work Zone, Standard Edition. Before we get into the content federation, there are few terms we need to understand.
- Integrate Business Content into your subaccount from content providers (remote or SAP BTP providers) or you can add the content manually.
- A Content Provider exposes content from a source to make it accessible from SAP Build Work Zone, standard edition. Content providers can expose content from cloud or on-premise systems.
- Remote content providers – SAP IBP, SAP S/4HANA Cloud, SAP S/4HANA, SAP Business Suite, and SAP Enterprise Portal
- SAP BTP content providers – HTML5 Apps, Launchpad Modules.
- A Remote Content Provider is a solution that exposes content that can be integrated in the SAP Build Work Zone, standard edition, as it requires its administrator to expose the desired content. Additionally, the administrator needs to configure a design-time destination from where to fetch the content, and a runtime destination from where to execute the content.
- An end-to-end process for integrating content from cloud solutions is composed of Content Exposure Flow and Content Consumption Flow.
Pre-requisite
- SAP BTP Account with Subaccount enabled (I am using BTP trial account as part of this blog).
- Entitlements like SAP Build Work Zone Standard Edition, SAP S/4HANA Cloud Extensibility, SAP HTML5 Applications Repository service.
- SAP S/4HANA Cloud, public edition tenant with admin roles.
- SAP Build Work Zone with admin role.
Register SAP S/4HANA Cloud with SAP BTP
Setup S/4HANA Extensibility Entitlement with SAP S/4HANA Cloud Tenant
In the SAP BTP Cockpit, navigate to Entitlements > Entity Assignments > Choose the entity > Configure Entitlements > Add Service Plans. Search for the SAP S/4HANA Cloud Extensibility and click on it. On the right side we need to choose our registered System, and choose below available plans.
- messaging – to consume SAP S/4HANA Cloud events and create event-based extensions using the event bus from SAP Event Mesh Integration.
- api-access – for generic access for SAP S/4HANA Cloud APIs.
Configure Inbound and Outbound Users with Communication Systems in S/4HANA Cloud Tenant
Communication systems are created to enable the communication among different systems.
Note: SAP recommends to use the client-based authentication (X.509).
Configure the Communication Arrangement
Communication arrangement to enable the communication between your SAP S/4HANA Cloud Tenant and SAP BTP.
- Under Additional Properties, enter the values as below:
- Logical Target Identifier, enter an unique ID to identify the target of the callback URL. This will be used in the content change notification process.
- Unused Exposure Content Expiration (Days), define after how many days unused exposure content will be deleted. The default value is 100. If you dont want to delete the content, set it to 0.
- Exposure Log Level, we need to specify which messages should be in the exposure log. The default value is 2. Below are the available values
- 1 – Show entities with errors
- 2 – Show entities with errors and warnings (default)
- 3 – Show entities with errors, warnings and success messages
- Now we need to enter the job execution details for scheduling the exposure content and click on Save.
Roles Exposure
Configure Communication for Content Consumption
Protect Against Clickjacking
To run apps in an iFrame, you need to configure an allowlist – define secure applications by adding trusted hosts to the protection allowlist.
- In the Add Trusted Host pop up, enter the below information and click on Add.
- Trusted Host Name: .launchpad.cfapps..hana.ondemand.com
- Schema: HTTPS
Adding Destinations
We need to create a design-time destination to define the location from where we need to fetch the exposed content, also runtime destination for launching the app.
Open the SAP BTP cockpit, and navigate to the Connectivity > Destination
Design-Time Destination
Property | Value |
---|---|
Name | s4hc_learn_dt |
Type | HTTP |
URL | https://myxxxxx-api.s4hana.ondemand.com/sap/bc/http/sap/APS_FLP_CONTENT_EXPOSURE/entities |
Proxy Type | Internet |
Authentication Method | BasicAuthentication |
User | User which created during Inbound Communication |
Password | Password which created during Inbound Communication |
Run-Time Destination
Property | Value |
---|---|
Name | s4hc_learn_rt |
Type | HTTP |
Description | Content Cell |
URL | https://myxxxx.s4hana.ondemand.com |
Proxy Type | Internet |
Authentication Method | NoAuthentication |
Additional Properties | Value |
---|---|
HTML5.DynamicDestination | true |
sap-platform | ABAP |
launchpad.wa.productId | SAP_S4HANA_CLOUD |
launchpad.wa.productVersion | 2302.latest |
Runtime Destination for Dynamic Data
Property | Value |
---|---|
Name | S4HC_LEARN |
Type | HTTP |
Description | Content Cell |
URL | https://myxxx-api.s4hana.cloud.sap |
Proxy Type | Internet |
Authentication Method | SAMLAssertion |
Audience | https://myxxx.s4hana.cloud.sap |
AuthnContextClassRef | urn:oasis:names:tc:SAML:2.0:ac:classes:PreviousSession |
Additional Properties | Value |
---|---|
HTML5.DynamicDestination | true |
HTML5.Timeout | 6000 |
nameIdFormat | urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress |
WebIDEEnabled | true |
WebIDEUsage | odata_abap |
Site Manager – Channel Manager
Display Launchpad Content Exposure Logs
- To get the application log, which was created when publishing launchpad content to SAP BTP, Display Launchpad Content Exposure Logs app will be used.
SAP Build Work Zone Site Manager – Content Manager
Site Manager – Site Directory
Here we will be adding the roles to the site.
-
Also enable other settings like
- Spaces and Pages available under Display –> View Mode
- Search in Shell Header available under Display –> Display on the screen
- Show Source System Name on Tiles available under Display –> Display on the screen — Enables the user to display the source system name on the tile.
- Add parameters as below to enable and display SAP Companion
- product – LAUNCHPADS_BTP_CF
- version – latest
- stateUACP – PRODUCTION
- dataUrlUACP – https://help.sap.com/webassistant/
- resourceUrl – https://webassistant.enable-now.cloud.sap/web_assistant/framework/
Add Roles to the User
Restrictions
- The integration of SAP Build WorkZone, standard edition with SAP S/4HANA Cloud, public edition is restricted to scenarios with a limited number of business roles.
- SAP Build Workzone, standard edition is no full equivalent of the SAP Fiori launchpad of SAP S/4HANA Cloud, public edition.
- The federation of multiple SAP S/4HANA systems is not recommended, as multiple groups, spaces, pages and apps with identical names might occur and create conflicts.
- Built-in support for ticket creation, support related information and end-user feedback (via Qualtrics) is not supported.
I hope you found this blog informative. Please do not hesitate to offer any suggestions.
Regards,
Sai Nithesh Gajula
Original Article:
https://blogs.sap.com/2023/06/05/integrate-business-content-from-s4hana-cloud-to-sap-btp-build-work-zone-standard-edition/