Extending standard SAP Fiori apps and BAS fails to deliver value
When SAP Business Application Studio fails to deliver value for the developer when extending SAP standard Fiori apps, blame the developer of the standard SAP Fiori application.
In the good ol’ days a Fiori developer used SAP Web IDE to develop and extend apps. We hated Web IDE for many things yet were happy to have a tool that supported us when we had to extend standard Fiori apps. Two years ago SAP decided to push a new product: Business Application Studio (BAS). There are many things we hate BAS for, but you can develop Fiori apps with it. Or extend SAP Fiori apps. The official documentation is clear on this:
„SAPUI5 Adaptation Project lets you create an app variant for an existing SAP Fiori elements-based application or freestyle application, on S/4 HANA on-premise ABAP system […]“ SAP Help
The fine print reads: “The minimum SAPUI5 version of the base app is 1.30 and it must have a manifest.json file.” SAP Help
Honestly, these requirements are not complicated to fulfill. A Fiori app that uses at least SAPUI5 1.30 and a manifest.json file, these are standard since 6 ½ years. The only problem is reality. Recently I had to look at a standard Fiori app and see if it makes sense to extend the app: Confirm Production Operations. The app description contains some screenshots, and you can see immediately from looking at them that the app is old. Old Master/Detail layout and back navigation everywhere.
The implementation tab shows that the last delivery of the app was in Q1/2018. The Fiori app library is not showing any information that the app is deprecated or that the usage is not recommended. So that’s the version to use if your SAP ERP system is Business Suite. Last delivery date is Q1/2018: that app is 4 years old. That is young enough to support SAPUI5 1.30 and manifest.json.
To sum it up so far: app is not deprecated, it is available for on premise Business Suite, documentation states it can be extended, and SAP provides with BAS a tool to develop and extend standard Fiori app. Let’s do it.
Select the Fiori app via its ID i2d.pp.prodops.confirm.*
Result: Extending the SAP standard Fiori App via the SAP recommended tool BAS is not possible.
This does not mean that the standard Fiori app cannot be extended. Web IDE can extend the app!
Web IDE does not care about the requirements like UI5 1.30 or manifest.json. BAS cannot extend the standard Fiori app as the app is simply too old. And the people responsible at SAP for the Fiori app are not taking care of the app: no updates since 2018. Basically you might say: the app is dead. The SAP team responsible for the app is just not marking the app as dead. Nor as deprecated. I guess they cannot do so as then they would need to provide a successor of the app for Business Suite. Actually, there is a successor available. There is a new app available for transaction CO11 for S/4HANA: F2822 (there is also one for CO11N, but that is just WebGui).
I guess that BAS can extend F822. It just won’t help when you are not using S/4HANA. In my case, the once released Fiori app for Business Suite is abandoned. The SAP team responsible moved on to S/4HANA and ignores the business suite version of the Fiori app. If you are in the same situation, this means:
- You cannot easily extend the SAP standard Fiori app. Either find a Web IDE installation or extend the app manually.
- If you do extend the app, the base app is abandoned since years. Who knows if the app is really supported?
- Your extended app is based on old Fiori guidelines and coding.
- Even when moving to S/4HANA you do not know if the SAP team responsible for the S/4 Fiori app is not going to ignore the app again and focus on another version.
For a customer that evaluates a Fiori app like this, reality is bitter. There is an app, but you cannot use it carefree. Too old, cannot be extended in BAS, obsolete design, and who knows if the backend part is aligned with latest ABAP coding guidelines. Is the app used by other customers? Are you going to be the first one to use it and run into problems? Is support going to tell you to move to S/4HANA to get the new app? You need to check the SAP Notes to see if support is working. I see 5 notes since 2019. Bug fixes, nothing to improve the app.
It’s an app for the statistics so SAP can report that there are hundreds of Fiori apps available. It’s not an app you simply deploy in production.
If you cannot use BAS to extend a standard Fiori app, it’s not per se the fault of BAS (+plugins). Of course, having the same features as Web IDE offered included in BAS would be nice. But we also must understand that the features for Fiori development in BAS were also selected to support more or less modern Fiori development. SAPUI5 1.30 and manifest.json is not cutting edge technology. A severe problem is that SAP is not taking much care of their standard Fiori apps. I understand that the teams want to focus on S/4HANA, but dear SAP: the world is not so simple. SAP customers are bound to reality. A standard Fiori app released for Business Suite must be supported. Not adopting the apps to newer Fiori or UI5 coding guidelines is not acceptable. There are many standard Fiori apps that did not receive a new version since years: Count Stock: Q3/2016, Print Labels: Q3/2017, Confirm Network Activity: Q3/2016, and so on. It’s not very hard to find these abandoned apps. Maybe it’s because SAP decided to make Fiori available for free. Did this eliminate for SAP product teams a reason to take care of their apps? To take owenership, responsibility? Were these apps developed to fulfill some order from the top to offer Fiori apps? Don’t they know if an app is used? Are there not enough people to maintain the apps? Wasn’t SAP aware that apps need attention? Continuous releases?
SAP, when you offer a standard Fiori app, that is not marked as deprecated, maintain it. Release an updated version of the app at least once a year. New Fiori Design Guidelines are released from time to time, new UI5 controls are added, the tools used change, maybe the OData and ABAP capabilities available changed. There are enough reasons to review an app once a year and to update it. If these reasons do not match the app, then mark it as deprecated and remove it.
*To get the app id, got to the app configuration in LPD_CUST: doc states that the configuration can be found in LPD_Cust role UIEAAP01. I found it in role UIAPP01, but hey, details. At least it is somewhere.