Skip to Content
Author's profile photo Jessica Merz

Easily Create App Variants in SAP S/4HANA Cloud

Have you ever been using an application and thought that the user interface (UI) would be more intuitive if you could move one field here, hide another field there and perhaps add some fields that weren’t there?

Say you are a manager and know that there’s an application that everyone in the company uses, but your department’s work would be done more quickly if the UI was changed just a little bit for them?

Good news! Now in SAP S/4HANA Cloud version 1805, you can easily adapt the user interface of SAPUI5 applications and save that as a variant for yourself and others to use!

How do App Variants work?

If you are using a S/4HANA application that was developed with SAPUI5, you can start the Adaptation at Runtime editor (RTA), adjust the UI of that application and save the new configuration as a new variant which you and other people can use.

The original application is not changed and its tile remains on the FLP. However, the variant gets its own tile on FLP.  The changes to the UI made via RTA are saved in a layered repository which is applied at runtime, ie whenever the variant is launched.  Just one of the advantages of this is that the changes are upgrade safe — if the original application is updated behind the scenes, the changes you made for the variant will still be applied when the variant is launched and will still work.

How do I create a Variant?

From Fiori Launch Pad, launch the application you want to adapt by selecting its tile.  Then go to the Me area and select Adapt UI.

This starts the RTA editor where you can easily drag and drop, hide, add and rename groups and controls.  Once you have made your changes, select the Save As button. In the Save as New App Variant dialog, complete the fields for Title, Subtitle, Description and choose an icon you’d like to appear in the tile on FLP.

Once you select Save, an alert tells you that the variant is being saved, will appear as a new tile in the FLP and the RTA editor will close.

 

How do I know which version I’m using?

Creating variants is really easy, but you can imagine that you might end up with a few and wonder which one is the original and which are variants.  All you need to do is launch the app in question, open up the RTA editor and select the Overview of App Variants button:

There you will see a list that includes the original application and any variants.  From there you can see which you are currently adapting, copy IDs, adapt the UI of any of them or even Save As in order to create another variant.

What are the requirements for using RTA?

  • You run your SAP Fiori app on a desktop computer or laptop.

  • Your app is developed in SAPUI5 version 1.28 or higher, is not scaffolding-based and uses Stable IDs.  If in doubt, ask your administrator.

  • Your business role is authorized for the business catalog SAP_CORE_BC_EXT.

Helpful links

Adapting SAP Fiori UIs at Runtime – S/4HANA Cloud documentation

SAPUI5 SDK Flexibility Services documentation

Assigned tags

      14 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Milica Krstic
      Milica Krstic

      Is it possible to delete an app variant?

      Author's profile photo Jessica Merz
      Jessica Merz
      Blog Post Author

      Yes, unfortunately there is not yet a user interface to do this.  It is one of the reasons we recommend creating app variants on a Q system rather than a production system, so you only populate the production system with variants you want used.

      Author's profile photo Milica Krstic
      Milica Krstic

      Hi Jessica - Yes, this was in Q. I removed it all the custom catalog extensions but when I open up the catalogs from 'manage business catalogs' the app is still listed there. It just shows as a 'cannot load tile'.

       

      Author's profile photo Jessica Merz
      Jessica Merz
      Blog Post Author

      Yeah, I'm sorry that we don't yet have a UI for cleaning up unneeded variants (yet).

      Author's profile photo Carlo Kenzo Nagatani Feitoza
      Carlo Kenzo Nagatani Feitoza

      Hi Jessica! Do you know if this will be in the next release? Thank you.

      Author's profile photo Jessica Merz
      Jessica Merz
      Blog Post Author

      Not that I'm aware of but I'll keep pushing!  Best, Jessica

      Author's profile photo Matthias Schmalz
      Matthias Schmalz

      Hi Milica,

      unfortunately there's no UI for it yet. Currently you could only delete app variants via a REST API. Do you want details about it?

      Best regards
      Matthias

      Author's profile photo Milica Krstic
      Milica Krstic

      Hi Matthias - Yes please, could you share the api.

      Author's profile photo Matthias Schmalz
      Matthias Schmalz

      Hi,

      in the meanwhile there is an UI for the deletion of app variants. It is available in S/4 Cloud and with S/4 1909 OnPremise.

      You can find it in the app variant overview dialog, which you can reach from the adapt UI mode.

      Best regards
      Matthias

      Author's profile photo Matthias Schmalz
      Matthias Schmalz

      Hi Milica,

      I'm sorry for the delay. Actually you have 2 options:

      They easy way, if you just want to disable the app variant and make it unavailble for end users, without completely deleting it, you can remove the corresponding catalog extension. It will still appear on the app variant overview list in that case but you can no longer launch it.
      To do this launch the Custom Catalog Extensions app and lookup the entry corresponding to your variant. The ID will end with _FLAV and the title should carry the variant Id. Open it, revoke the catalog assingment and publish this.
      You can copy the Id on the app variant overview tool. You also need it for the other option.

      The complicated way, to delete it completely you will need a REST client:

      1. First logon to the system via browser and ensure that the REST client will reuse the logon session.
      2. Determine the app variant Id as written above and assemble the URL: <host of your ABAP system>/sap/bc/lrep/appdescr_variants/<app variant id>?changelist=ATO_NOTIFICATION
      3. Retrieve the x-csrf-token by firing a GET request on the URL with the header x-csrf-token: fetch. The response will contain the same header and provide the token
      4. Fire a DELETE request on the URL with header x-csrf-token: <fetched token>

      Best regards
      Matthias

      Author's profile photo Mingkang Huang
      Mingkang Huang

      Does it work for both Fiori and WebGui APPs?

      Author's profile photo Oliver Graeff
      Oliver Graeff

      HI Mingkang,

      sorry for the late reply. Thisefunctionality is part of SAPUI5. For WebGUI you might want to have a look at what SAP Screen Personas offers -> http://sapscreenpersonas.com

      Cheers,
      Oliver

       

      Author's profile photo Thogai Thiruvengadam
      Thogai Thiruvengadam

      Hi Jessica Merz - Can you please tell me how to create and add a tile for the app variant. I created a tile after saving app variant and I received message "The new app variant was saved. UI Adaption will be closed. Please contact your administrator to add the tile to FLP homepage (app id : customer.fin.co.id_xxxxxxx)" . I don't know how to this variant to any existing catalog.

      Appreciate your help in advance!

      Regards,

      Thogai.

      Author's profile photo Stephanie Blouin
      Stephanie Blouin

      Hi Thogai Thiruvengadam I'm facing similar problems. Did you find how to add the new variant tile to the FLP? I cannot find it in any catalog.

      Thanks, Stéphanie