on 10-18-2023 2:43 PM
Hi,
I have read multiple documents on how to keep the core clean for S/4HANA and BTP, but they're mostly related to the backend stack (OData, APIs, enhancements, etc.). All these documents mention some stuff about the UI part (e.g. available extension options), but they're not that detailed and lack the view from the architectual perspective.
I have a couple of questions related directly to SAP Fiori and how to keep the core of UI5 clean in BTP + S/4HANA architecture:
BR,
Adrian
Hi Adrian,
Hope my comments below help provide some clarity to your asks:
Question: Let's say we have a Launchpad in BTP, connecting to multiple on-premise S/4HANA systems (hybrid architecture). In one of S/4 systems we have a standard Fiori Timesheet application. A new requirement is to perform some modifications, which can be achieved by extension project only (no option to adapt the UI as a key user). Where should an extension app be built? Should it be deployed to BTP (to decouple from the backend) or sit together with an original app on-premise (and then be exposed in BTP)?
Ans: For the scenario you mentioned here which is about extending std delivered fiori app, I see two options: a. if the std fiori app has extensibility placeholders (typically in view and controllers), you can use SAP Business Application Studio (BAS) in BTP to extend and add your flavor in those placeholders. Refer How to Extend an SAP Fiori app for SAP S/4HANA and SAP S/4HANA Cloud for more info. b. you can explore UI adaptation approach using SAP BAS. Refer to SAP Fiori Elements: Adaptation Project – Adding a Custom Filter to the List Report and openSAP microlearning (if you like video).
Question: Is there any general rule for adaptation/extension projects?
Ans: There be some std published literature on this but usually I approach it based on the availability of extensibility hook points natively in the app and UI adaptation approach as another option - in the same order.
Question: Should it be deployed to BTP (to decouple from the backend) and Is BTP first a right rule?
Ans: Not mandatorily but... if you can extend the app or 'adapt' the UI using SAP BAS, you have the option of deploying the extended (or a custom built fiori app for that matter) into BSP repo back in the ABAP system or deploying it as an app in SAP BTP. Latter helps with the larger theme of keeping your core clean, decoupling extension/custom apps from main business system - but still leverage backend odata services and its authorizations underneath.
Question: Similar case, but with a completely custom Fiori app. Let's say we have installed a new role in S/4HANA, enabling Users to consume standard set of applications in HR area. Then we realize we need some new app that consumes data from the same S/4 system. Should new freestyle UI5/Fiori Elements app sit in BTP or on-premise? When to decouple and when to keep together? From the User perspective it shouldn't matter, as Launchpad can expose apps from different sources. I think backend shouldn't play a significant role too, as we can build both CAP and RAP.
Ans: answer for first part of your question is in previous ans. Technically, you have the option of deploying the custom fiori app (freestyle or fiori elements based) into backend or in BTP. The approach you take depends on what is your overall extensibility approach, development guidelines you adopt for keeping your core clean. It's quite common for many of our customers take the route of deploying custom fiori apps in BTP and then provision it to end users through SAP Build Work Zone (Std/Adv) along with other std S/4HANA apps (i.e. std and extn apps in one place) to end users.
Question: Are there any documents related to keeping the core clean for Fiori apps (related to frontend stack)? It would be really nice to have a guide explaining various architectures and SAP's recommendations.
Ans: I'd point you to these two links. S4HANA Extensibility Explorer and Custom Extensions in SAP S/4HANA Implementations - A Practical Guide for Senior IT Leadership. Between them you should be able to find additional info on extensibility in general, Fiori and UI adaptation specific stuff, what does it mean to keep core clean, our general recommendations, things to consider, pros and cons of certain approaches etc.,
Regards,
Ashok.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for your reply ashok.kumarm
#1 - I already know the way to build the extension and how to perform it (extension project using standard app extension points, done in BAS). The question is where the extension UI5 project should be deployed? Should we decouple extension (BTP) from standard app (S/4 on-premise) or keep them together on-premise? Probably there's no clear answer for that, as we should consider the roles setup, etc.
But in overall thanks for your valid takes.
User | Count |
---|---|
87 | |
9 | |
8 | |
7 | |
6 | |
3 | |
3 | |
3 | |
2 | |
2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.