SAP Fiori for SAP S/4HANA – Creating custom content for Business Roles
Latest Update May 2021: You can now find an openSAP microlearning on Creating Launchpad Content with the SAP Fiori Launchpad App Manager in the SAP S/4HANA User Experience playlist
Latest Update December 2020: Included equivalent screenshots of examples using the new Launchpad app manager tool for SAP S/4HANA 2020.
Latest Update November 2020: A few changes to and clarifications in the parameter list following some internal discussions re recommended usage.
This blog post gives guidance, some examples and tips for adding your own custom content to your custom Business Role. This is part of our blog series on Understanding Business Roles.
TL;DR version: Creating custom content for your busines roles involves working with technical catalogs. You create the launchpad app descriptor item (tile definition/target mapping) you need to launch your specific app/UI in your technical catalog. You can use the thousands of examples delivered in SAP Technical Catalogs to guide you on settings for different apps/UIs and related parameters. Similar to using SAP delivered content, you then:
- Use your custom business catalog to reference your custom content in your technical catalog,
- Assign your custom business catalogs to your custom business roles, and finally
- Assign your custom business roles to your users.
For guidance and examples scroll down to section Guidance and Examples for launchpad app descriptor item settings.
Not every SAP S/4HANA customer will want to create custom content, but many do. So, you may need to know add your own custom content to your business roles so that it appears in your SAP Fiori launchpad.
Typical use cases where you need to add custom content to your business roles include:
- You have built your own custom SAP Fiori apps on your SAP S/4HANA solution
- You have built your own custom apps in the SAP Cloud Platform
- You want to launch out to 3rd party apps or Cloud (SAAS) Solutions
- You may want to include URLs, for example to policy guidelines on your company website
- You have inherited classic UIs (e.g. Z-transaction codes) as part of your system conversion from SAP Busines Suite to SAP S/4HANA
- You want to override SAP-delivered content, e.g. to adjust tile/link texts, search keywords, or to add parameters
The general procedure for adding custom content is shown in the diagram below.
Essentially, you create custom content in custom technical catalogs, which gives you easy reuse of your custom content across any of your custom business roles.
Tip: You can find the full end to end process for creating your own custom business roles, including both content and layout, for SAP S/4HANA 2020 in the SAP Fiori Launchpad guide section Advanced Scenario – Adapt SAP Template Content and Add Your Own Content.
A custom technical catalog is simply a container for all your custom launchpad app descriptor items – tile definition and target mapping combinations. The tile definition determines the appearance of the tile or link that launches your content from the launchpad (home) page itself or via navigation from related SAP Fiori apps. The target mapping determines what custom content is launched – i.e. which app, UI, or URL – and which parameters are passed on launch. You can find out more about technical catalogs in the official SAP Fiori Launchpad guide for your release in section Setting Up Technical Catalogs.
Once you create your content in your custom technical catalogs you can:
- reference custom content in your custom business catalogs,
- assign your business catalogs to your custom business roles,
- assign your custom business roles to your users.
In this blog post you will learn:
- Some general considerations to keep in mind
- Prerequisites for adding custom content
- Choosing your Semantic object and action for your custom content
- Finding guidance and examples for launchpad app descriptor item settings
- Main settings for launchpad app descriptor items (tile definitions and target mappings), including some tips for parameter mapping
Some general considerations to keep in mind
You are recommended to always create custom content in the cross-client configuration (CONF) scope. Since custom content represents an app, user interface or URL that is the same across all clients, creating the source content in a technical catalog gives you the widest reuse across all your custom business catalogs, custom business roles and business users.
Creating custom business catalogs has already been covered in Adding selected content SAP content to a custom business role
Assigning the business catalogs to business roles and then to users has already been covered in How SAP Business Roles simplify refining SAP User Experience
You can learn how to reference content from technical catalogs into business catalogs in Adding selected content SAP content to a custom business role.
The most efficient tools for creating custom content in custom technical catalogs are:
- From SAP S/4HANA 2020, the Launchpad App Manager for creating all technical catalogs regardless of content
- For an overview of this tool, refer to SAP Fiori Launchpad App Manager Tool Available for SAP S/4HANA 2020
- For detailed steps refer to your SAP Fiori Launchpad guide section Setting Up Technical Catalogs with the Launchpad App Manager
- You can see the tool in action in the openSAP microlearning on Creating Launchpad Content with the SAP Fiori Launchpad App Manager in the SAP S/4HANA User Experience playlist
- For SAP S/4HANA 1511 to 1909, use the Launchpad Designer for SAP Fiori apps, SAPUI5 apps, and URLs
- For detailed steps refer to your SAP Fiori Launchpad guide section Setting Up Content With the Launchpad Designer
- From SAP S/4HANA 1511 to 1909, use the Mass Maintenance app descriptor tool SAP GUI transaction MM_APP for classic User Interfaces, i.e. classic UIs, such as SAP GUI transactions, ABAP Web Dynpro applications, and Web Client UIs
To view (but not maintain) existing content, you can also use the launchpad content manager tool in the cross-client configuration (CONF) scope, i.e. SAP GUI transaction /UI2/FLPCM_CONF.
For more details on the various tools and which are relevant to your SAP S/4HANA release refer to Overview of tools for maintaining custom launchpad content and layout.
Important: Avoid mixing launchpad descriptor items for SAP Fiori apps and classic UIs in the same custom technical catalog. This is for technical reasons, i.e. launchpad app descriptor items for classic UIs have an additional replication step needed to reformat them into technical catalogs. You can find out more about this in your SAP Fiori Launchpad guide section Setting Up the Replication of Back-End Catalogs.
Prerequisites for adding custom content
Before you add your custom content, you should always test your content independently, to make sure it is working before you include it in the SAP Fiori launchpad.
You also need to understand the possibilities for using your content in the SAP Fiori launchpad, with respect to:
- Type of content
- Web browser restrictions or limitations
- Device type restrictions or limitations
- Theming restrictions
Type of content
You need to know what types of content can be launched from the SAP Fiori launchpad in your SAP S/4HANA solution. For example, this currently includes:
- SAP Fiori apps (i.e. apps based on SAPUI5 technology) on your SAP S/4HANA solution
- Including SAP Fiori app variants
- SAP Fioris app on SAP Cloud Platform (from SAP S/4HANA 2020)
- SAP GUI transactions
- ABAP Web Dynpro applications
- Web Client UIs (from SAP S/4HANA 1909)
- URLs (e.g. to 3rd party apps, Cloud solutions, and web-accessible documents)
SAP GUI Transactions and ABAP Web Dynpro applications can be launched with or without SAP Screen Personas flavors. You add the flavor by adding the parameter sap-personas-flavor=<flavor id>
Web browser restrictions or limitations
You need to understand any restrictions or limitations on the UI technology you are using for your custom content in a web browser. For example:
- SAP Note 314568 – SAP GUI for HTML functionality / Limitations / Sp. Behaviour
- SAP Note 2050838 – SAP Screen Personas – Limitations / Restrictions / Behavior
Device type restrictions or limitations
You will need to know if your custom content should only be made available on certain device types. For example:
- SAP Fiori apps and custom Fiori apps can be used on all device types, however apps may be optimized for specific device types. For example, an app that contains a table with a large number of columns may not be suitable for use on smartphones.
- From SAP S/4HANA 1909 and higher, classic UIs are mostly supported on desktop and tablet devices, refer to 2700517 – Mobile device support for Unified Rendering based frameworks: Web Dynpro ABAP and SAP GUI for HTML
- In releases SAP S/4HANA 1809 or lower, these classic UIs are generally only supported on desktop
- Where needed, SAP Screen Personas can be used to provide a device type flavor on a classic UI.
In the target mapping of the launchpad app descriptor item, you mark the device types that are relevant. When a user opens the launchpad on their device, only relevant apps for that device type are displayed. Apps that are not relevant are automatically hidden from view.
Theming restrictions
Theming restrictions can influence the look and feel of your custom content when launched from the SAP Fiori launchpad. For example:
- For releases SAP S/4HANA 1909 (or SAP Fiori frontend server 1909) or higher, refer to SAP Note 2814266 – Restrictions of SAP Fiori 3 visual theme for classic applications
- For lower releases refer to SAP Note 2348661 – Restrictions of SAP Fiori 2.0 visual theme for classic applications
Choosing your Semantic Object and action for your custom content
The tile definitions and target mappings of launchpad app descriptor items are logically linked by Semantic Object and action. Your choice of Semantic Object will influence when and whether your custom content is displayed in the very commonly used dynamic link dialogs such as:
- List of links (aka Smart Link) dialogs
- Related apps buttons
- Search results links
You saw examples of some of these in Adding selected content SAP content to a custom business role You can see some more examples in many SAP Business Roles. For example, in the Maintenance Technician role you can see a list of links dialog in SAP Fiori app F2071 Find Maintenance Notification.
Similarly when you expand a single maintenance notification row in SAP Fiori app F2071 Find Maintenance Notification you can see the Related Apps button links.
Dynamic links based on Semantic Objects also appear in the Search, for example when searching on Maintenance Notifications.
For this reason, you should always use the standard SAP Semantic Object if there is one relevant to the custom content.
Important: Do NOT create Z copies of SAP Semantic Objects! Creating and using Z copies of SAP Semantic Objects has the following impacts:
- Your custom content will be missing in dynamic references such as:
- Smart Link dialogs and Related Apps menu button accessed from SAP Fiori apps, and
- From the Search results accessed via the launchpad itself
- It makes your content harder to find when comparing SAP vs. custom technical catalogs and business catalogs.
You can see all the SAP-delivered Semantic Objects using SAP GUI transaction /UI2/SEMOBJ_SAP. In SAP S/4HANA 1909, more than 2600 semantic objects are delivered.
You should only create a custom Semantic Object when there is no equivalent SAP semantic object. For example, when creating industry-specific or organization-specific custom content, where there is no equivalent SAP solution or business entity. You can create custom Semantic Objects in SAP GUI transaction /UI2/SEMOBJ.
The action you use with your Semantic Object can be freely defined. The action should be a verb (“doing” word) such as:
- manage
- edit
- create
- display
The action can also be a multipart word, such as displayChangeDocuments.
While SAP delivers a number of common actions, you can freely create your own.
Tip: You may wish to identify custom actions by using a common prefix such as Z, to help identify custom content from SAP-delivered content.
Finding guidance and examples for launchpad app descriptor item settings
You can find the specific settings for launching your custom content, including parameter setting options, in the SAP Fiori Launchpad guide for your release:
- For SAP S/4HANA 2020 and higher, refer to your SAP Fiori Launchpad guide section Maintaining Launchpad App Descriptor Items.
- For SAP S/4HANA 1909 and lower releases, refer to your SAP Fiori Launchpad guide section Configuring Target Mappings.
You can review SAP Technical Catalogs to find many examples of settings and parameters for each custom app type. You can use the Launchpad App Manager (from SAP S/4HANA 2020) or the Launchpad Content Manager (from SAP S/4HANA 1709) in cross-client configuration (CONF) scope to view technical catalogs, i.e. via SAP GUI transaction /UI2/FLPCM_CONF.
You can search for the technical catalog by name or id or by partial name using a wildcard.
Most tile definitions are similar regardless of the app or UI type, so focus particularly on the target mapping details that control which app/UI is launched, and what parameters are passed when the app/UI is launched.
Technical catalogs that contain classic UIs can be easily identified by the assignment to a system alias, which identifies the backend system/module. In the example below you can see the technical catalog SAP_TC_EAM_BE_APPS is assigned to system alias S4EAM, and contains SAP GUI transactions (App Type = GUI) and ABAP Web Dynpro (App Type = WDA) apps only.
You can compare this to the technical catalog SAP_TC_EAM_COMMON, which contains only SAP Fiori apps (based on SAPUI5 technology) and SAPUI5 apps.
To view the parameters assigned to the target mapping, you can open the target mapping in the launchpad app manager (from SAP S/4HANA 2020) or launchpad designer tool.
For classic UIs you can also view the parameters in the Launchpad App Manager or Mass Maintenance App Descriptor tool.
Some examples of settings for app types with explanations are shown below.
Target Mapping Examples
You can find many examples in the SAP Technical catalogs delivered with your SAP S/4HANA solution. These are a few examples to get you started on the target, device type, and parameters useful for the main application types:
- SAP Fiori apps
- SAP GUI Transactions
- Web Dynpro ABAP applications
- Web Client UIs
- URLs
You can see examples for these both in the Launchpad app manager – the new tool recommended for SAP S/4HANA 2020 – and in the Launchpad Designer – the tool recommended for SAP S/4HANA 1511 to SAP S/4HANA 1909.
With the Launchpad app manager you see separate tabs for All Fields and Parameters. With the Launchpad Designer you see all fields on a single page.
SAP Fiori apps
This is an example for SAP Fiori app F2173 Find Maintenance Order and Operations. This launchpad app descriptor item is held in technical catalog EAM – Technical Catalog Apps (id SAP_TC_EAM_COMMON).
In Launchpad App Manager:
In Launchpad Designer:
Target:
- The application type is SAPUI5 Fiori app.
- Title is the title used on dynamic links
- The URL is the path to the ICF node
- ID is the full technical name of the SAPUI5 component – in this example there is a variant referenced
Device Type:
- Desktop, Tablet and Phone are marked.
- Note that if the app is optimized for use only on certain device types, only those device types are marked.
Parameters:
- Inbound parameters from the calling application are passed to target parameters of the app by name
- Note: The support component for the app is contained in the SAPUI5 app descriptor file (i.e. manifest.json file) and does not need to be specified as a parameter.
SAP GUI Transactions
This is example shows a target mapping for SAP GUI Transaction VA02. This launchpad app descriptor item is held in technical catalog SAP Sales and Distribution: Classic Apps (id SAP_TC_CEC_SD_BE_APPS).
In Launchpad App Manager:
In Launchpad Designer:
Target:
- Application Type for GUI transaction = Transaction
- Title is the title used on dynamic links
- Transaction = the SAP GUI transaction code, in this example VA02
- System Alias = the logical backend system – which is mapped to a RFC Destination in maintenance view /UI2/V_ALIASMAP
Device Type:
- Desktop and Tablet are marked, as this example is taken from a SAP S/4HANA 1909 system.
- Note that in SAP S/4HANA 1511 to 1809 only Desktop is supported for SAP GUI transactions
Parameters:
- The semantic object SalesOrder is passed to the screen field VBAK-VBELN, i.e. TargetName = VBAK-VBELN
- A fixed value ENT is passed to the Ok Code, using TargetName = DYNP_OKCODE
- To suppress the initial screen both when launching and when navigating back to the previous app/UI, a fixed value 1 is passed to TargetName = DYNP_NO1ST
- The support component is set to SD-SLS using parameter name sap-ach
ABAP Web Dynpro applications
This example shows a target mapping for Web Dynpro application Maintain Bank Hierarchy. This launchpad app descriptor item is held in technical catalog SAP Finance – Cash Management: Classic Apps (id SAP_TC_FIN_CM_BE_APPS).
In Launchpad App Manager:
In Launchpad Designer:
Target:
- Application Type = Web Dynpro
- Title is the title used on dynamic links
- Application = the Web Dynpro application id
- Configuration = the Web Dynpro configuration id
- System Alias = the logical backend system – which is mapped to a RFC Destination in maintenance view /UI2/V_ALIASMAP
Device Type:
- Only desktop is marked meaning that this application is only intended to be used on a desktop
Parameters:
- A parameter HIERID can be passed to the application
- The support component is set to FIN-FSCM-CLM using parameter name sap-ach
Web Client UI
This example shows a target mapping for Web Client UI application Create CRM Activity. This launchpad app descriptor item is held in technical catalog SAP CRM Sales Apps (id SAP_TC_S4CRM_SLS_BE_APPS).
In Launchpad App Manager:
In Launchpad Designer:
Target:
- Application Type = Web Client UI Application
- Title is the title used on dynamic links
- Application id = the Web Client UI application id
- System Alias = the logical backend system – which is mapped to a RFC Destination in maintenance view /UI2/V_ALIASMAP
Device Type:
- Desktop and Tablet are marked. Meaning this app will be hidden on phones.
Parameters:
- The support component is set to CRM-BTX-ACT using parameter name sap-ach
URLs
You can do a URL as a tile definition without a target mapping when the URL is static.
However, if your host and/or port need to be adjusted with your system landscape a better option is to use an intent to create a dynamic target mapping.
Example: URL to the Technical Monitoring Cockpit
In Launchpad App Manager:
In Launchpad Designer:
Target:
- Application Type = URL
- Title is the title used on dynamic links
- URL = the relative URL path
- System Alias = is empty – however it can also be set to a system alias that provides the protocol, host and port to be used for the URL
Device Type:
- Desktop and Tablet are marked. Meaning this app will be hidden on phones.
Parameters:
- ABAPSystemID is passed to a URL parameter system_id
- DomainID is passed to a URL parameter domain_id
- View is passed to a URL parameter navigation_id
You can find more examples in these customer-created blogs:
- How to Create a Tile Pointing to URL : S/4HANA
- How to Create a Tile Pointing to dynamic URL : S/4HANA
Tips for parameter passing
Parameters in the target mapping refer to inbound parameters, i.e. what to pass when the app or UI is launched. Be aware that if your app can be launched from multiple places, e.g. from the launchpad or via app-to-app navigation from another app, that this can change which values are passed.
You can add as many parameters as you wish. Which parameters can be passed is typically limited by the target application, i.e. what parameters can it accept on launch.
If the parameter name is the same for both source and target, it is sufficient to list the parameter name in the target mapping for it to be passed.
Example: Parameter GLAccount is listed in this target mapping fragment.
If you simply need to rename the parameter, set Name as the incoming parameter name and Target Name as the new name to be passed to the target app.
Example: When navigating from the launchpad page to the target app, a user default is applied. However, when navigating from another app to the target app, the specific Semantic Object being passed may override the generic User Default.
The following examples give the most common and straightforward use cases for parameter passing. For a deeper dive on technical possibilities refer to the SAP Fiori Launchpad guide > Developer Guide, section Developing Navigation.
Passing User Defaults
When you are launching an app, UI or URL from the launchpad (home) page, you often want to provide a default value. This can be a single value or extended (i.e. multiple) values from the user’s Settings > User Defaults, depending on the target field in the target app.
Tip: SAP Fiori apps often support both single and extended values. Classic UIs such as SAP GUI transactions usually only support single values.
For a list of available default values for your SAP S/4HANA release, refer to Setting User Defaults in SAP S/4HANA
For an example of how to apply default values in target mappings refer to Applying User Defaults in SAP S/4HANA
For details of how this applies to your SAP S/4HANA version, refer to your SAP Fiori Launchpad guide section Configuring Navigation Parameters with User-Specific Default Values
Passing Semantic Object id
You can pass the Semantic Object id using the Semantic Object id as a parameter. This is particularly useful when you expect to navigate from a SAP Fiori app to the target app or UI.
Often a single row of a table may include multiple Semantic Object ids.
Other useful parameters
Disclaimer: Not all parameters are available for all SAP S/4HANA releases and SAPUI5 versions.
You find some more useful parameters and details on when and how to use them in your SAP Fiori Launchpad guide in section Passing User Settings to URL Applications. A quick overview below:
Becoming a SAP Fiori for SAP S/4HANA guru
Tip: The screenshots in this blog post were taken in a SAP S/4HANA 1909 FPS02 system, with SAP Fiori frontend server is in embedded mode.
You’ll find much more on the community topic page for SAP Fiori for SAP S/4HANA
Other helpful links in the SAP Community:
- Follow our tag SAP S/4HANA RIG for more from the SAP S/4HANA Customer Care and RIG
- See all questions and answers about SAP Fiori for SAP S/4HANA
- Follow SAP Fiori for SAP S/4HANA for more blogs and updates
- Ask a Question about SAP Fiori for SAP S/4HANA
Brought to you by the SAP S/4HANA Customer Care and RIG.
Source: SAP Fiori for SAP S/4HANA – Creating custom content for Business Roles | SAP Blogs
Nenhum comentário:
Postar um comentário