- SAP Fiori Tutorial
- SAP Fiori - Home
- SAP Fiori - Introduction
- SAP Fiori - Architecture
- SAP Fiori - NetWeaver Gateway
- SAP Fiori - Installation
- SAP Fiori - Launchpad
- SAP Fiori - OData Services
- SAP Fiori - Transactional Apps
- SAP Fiori - Fact Sheets
- SAP Fiori - Analytical Apps
- SAP Fiori - Theme Designer
- SAP Fiori - Security
- SAP Fiori - Data Flow
- SAP Fiori - WorkFlow
- SAP Fiori - Extension
- SAP Fiori - UI5 Concepts
- SAP Fiori - UI5 Design Patterns
- SAP Fiori Useful Resources
- SAP Fiori - Questions and Answers
- SAP Fiori - Quick Guide
- SAP Fiori - Useful Resources
- SAP Fiori - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
SAP Fiori Interview Questions
Dear readers, these SAP Fiori Interview Questions have been designed specially to get you acquainted with the nature of questions you may encounter during your interview for the subject of SAP Fiori. As per my experience good interviewers hardly plan to ask any particular question during your interview, normally questions start with some basic concept of the subject and later they continue based on further discussion and what you answer:
Configurations of SAP Fiori Apps are divided into two parts: Configuration of Transaction Apps and Fact sheets, Configuration of Analytical Apps.
Before configuring anything, the complete infrastructure for SAP Fiori apps must be installed. Once that is completed there will be activities to configure on back-end and front-end servers.
Step 1 Configuring SAP Web Dispatcher specifies routing rules to define which URL is forwarded to which system is done for both Transactional Apps and Factsheets.
Step 2 only needs to be configured for Factsheets. If we just have to configure Transactional Apps we can skip step 2.
Step 3 is configuring the front-end server and this is done for both Transactional Apps and Factsheets. At high level we need to configure −
SAP NetWeaver Gateway
The Central UI Add-Ons (Launchpad Configuration)
Product Specific Add-Ons
Step 4 is configuring the back-end server and this is done for both Transactional Apps and Factsheets.
Viewing from a high level – Roles, Users and Authorizations
Note − Transactional Apps can run on any DB whereas the Factsheets must run on SAP Hana.
Step 1 Configure SAP Web Dispatcher −
Needs to be configured to specify routing rules stating which URL is forwarded to which request
Configuring authentication and SSO needs to be done in the HANA database.
Step 3 configuring the front-end server −
- Configuring NetWeaver Gateway
- Central UI add-Ons
- Product specific add-Ons
Step 4 (Only needed for Smart business apps) −
- Enable user access to KPI data
- Model KPIs
- Configure navigational targets for KPI catalogs
Analytical apps and the SAP Smart Business apps share the setup of HANA XS engine and KPI Framework only (in Smart Business Apps). After setup of SAP Fiori System Landscape with SAP Hana XS engine we need to be following the KPI modeler on front-end server and respective SAP Smart Business Products on SAP Hana server.
To define a trust relationship between SAP system and SAP NetWeaver gateway host by configuring SAP system to be trusting system and NetWeaver gateway host to be the trusted system. It enables remote logon for users who use the same user data in both SAP NetWeaver Gateway host and SAP system.
To configure SAP system as the trusting system −
Create an RFC destination for use in the trust configuration.
Define system to be trusting system using transaction SMT1.
Configure the system to create and accept assertion tickets from SAP NetWeaver Gateway host using SSO2 wizard.
To configure SAP NetWeaver Gateway host as trusted system −
Create an RFC destination for communicating with the trusting SAP system.
To configure Enterprise search in back end, we must have Embedded Search Technology setup.
By implementing SAP Single Sign-On, your apps become automatically available after just one initial user authentication at the users Windows desktop, with no need for further log-on procedures.
Kerberos technology is the method of choice in intranet scenarios for SSO. It simply re-uses your Windows domain authentication for single sign-on.
X.509 certificates provide a viable option for creating a secure SSO infrastructure if you're considering extending single sign-on to extranet or cross-company scenarios.
Configure ABAP Front-end server includes- Configure SAP NetWeaver Gateway, Configure the Central UI Add-On, Configure SAP Fiori Launchpad.
Configure access to KPI data (SAP Smart Business only) includes – enables user access to KPI data, KPI modeler, Configure navigation targets for KPI’s.
In NetWeaver Gateway Central Hub deployment − UI layer and SAP NetWeaver gateway is contained in ABAP Front-end server. The ABAP back end server contains business logic and back end data. Separating business logic and back end data from UI layer has below advantages −
Single Point of maintenance for UI issues- such as browser support and updated version of SAP UI5 libraries.
Central place for theming and branding SAP Fiori Apps.
Routing and composition of multiple backend systems is supported.
Single Point of access to backend systems and enhanced security because of no direct access to backend system.
SAP recommends Central Hub deployment especially for Productive environment. Separate NetWeaver Gateway system is required.
In Embedded Hub Deployment − NetWeaver gateway is deployed on same server as the Business Suite. So multiple Business Suite systems requires Gateway to be configured multiple times. It is not recommended by SAP especially for customers with multiple back ends.
No additional separate NetWeaver Gateway system is required. It is usually used for sandbox purposes only.
Trusted RFC provides data from backend Business suite to the apps. SAP Business suite is present in ABAP back-end server with all its modules- ERP, CRM, SRM, SCM. Fiori Apps are available in ABAP frontend server in Fiori Launchpad.
Transaction Apps are only apps that don’t have to run on Hana system. They can run on any Database. All factsheets, Analytical apps and Small Business Apps run on SAP Hana. Only Fact sheet requires Search Models. Only Analytical Apps requires Hana XS Engine and KPI Framework is needed for Smarts Business Apps.
SAP Web Dispatcher (Reverse proxy) is entry point for HTTP(s) request in SAP Fiori Architecture. It can accept or reject connections as per user request.
SAP Hana XS engine contains 2 components-Hana Live App Content and SMART Business components with KPI modeler. Within Hana Live App Content VDM reuse content exist.
The Model-view-controller pattern defines domain modeling, GUI of application and input and actions based on devices. MVC approach defines in SAP UI5 has following points −
A bridge between view and data of the apps and it accepts the request from view and responds accordingly. It doesn’t depend on any of classes.
It manages the display of information (GUI of the application) and it depends on Model.
It concludes the input given by devices and communicates to model/view to take proper action. It also depends on model. View and Controller have 1:1 relationship. Controller entertains user requests received from View.
UI5 data binding supports three different model implementations −
XML model supports XML data and it supports two-way binding.
OData model supports OData compliant data. It creates OData requests and handles responses. It includes the open source library dataJS to handle OData requests and data. It supports two-way experimental binding.
OData is a protocol used to exchange data on web and was originally developed by Microsoft.It is based on Atom Publishing and Atom Syndication standards, which in turn, are based on XML and HTTPS(S).
The Atom publishing format doesn’t specify how Data should be encoded with in a feed therefore it fails to provide self-describing messages and fails to be fully RESTful. OData extends Atom by providing a metadata description of message.
OData provides definition for −
- Simple types
- Complex Types
- Association as well as Navigation path between entries.
- Custom behavior
- OData also adds an alternative representation of data in the format of JSON.
Scenario A: Central Hub Deployment — Development in SAP Business Suite Backend System
It enables to reuse data stored in the SAP Business Suite system easily since development takes place in the system in which data is stored.
To enable communication between the SAP NetWeaver Gateway system and the SAP Business Suite backend system, you must install IW_BEP in the backend system.
The life cycle of SAP NetWeaver Gateway content is dictated by the frequency of updates in the SAP Business Suite backend system.
Requires separate NetWeaver Gateway system
Scenario B: Central Hub Deployment — Development in SAP NetWeaver Gateway System
Noninvasive deployment scenario for SAP Business Suite backend system.
The life cycle of SAP NetWeaver Gateway content is loosely coupled to the lifecycle of the SAP Business Suite backend system.
To enable external access and fulfill security requirements, you can locate the SAP NetWeaver Gateway system in a demilitarized zone (DMZ).
You need only a single installation of the SAP NetWeaver Gateway Add-Ons within the system landscape.
Requires separate NetWeaver Gateway system.
The SAP NetWeaver Gateway content implementation cannot use the majority of development objects in the SAP Business Suite backend system. Consequently we need to create copies of structures and data domains.
We must choose this deployment scenario if we cannot install the SAP NetWeaver Gateway Add-Ons in the SAP Business Suite backend system. We might not be able to install Add-Ons in the backend system for reasons of security, stability, or incompatibility (due to system release).
Embedded hub Deployment — Development in SAP Business Suite Backend System
Easy reuse of content in SAP Business Suite backend system. We can reuse structures from the backend system and access local business logic.
Reduced total cost of ownership (TCO) as we do not require a separate SAP NetWeaver Gateway system.
The life cycle of SAP NetWeaver Gateway content is dictated by the frequency of updates in the SAP Business Suite backend system.
We must integrate the consuming application or infrastructure with the SAP Business Suite system on a point-by-point basis. Cross-system composition is not advisable.
Central SAP NetWeaver Gateway content is not available. Backend-specific content is used in the SAP Business Suite backend system.
If multiple SAP Business Suite systems are used Gateway would have to be configured multiple times.
Note − Embedded hub deployment is not recommended by SAP especially for a customer with multiple backend. This scenario is used for sandbox purposes only.
Workflow templates are prefixed with “WS”.
SWI2_DIAG → to diagnose workflow errors.
Workflow scenario aggregates one or more workflow tasks in workflow engine and is represented by a single entry in the consumer application. The service /IWPGW/TASKPROOCESSING is provided in the standard.
/UI2/TRANSPORT- Used by SAP Fiori Launchpad designer to read and assign transport request.
Sequence of steps −
Launchpad Designer – Add a catalog, add a group
Target mapping – semantic object, action
PFCG – Catalog, group
In order to expose our Gateway service to outside world, we must create an entry in the Service Catalogue on which ever server is acting as the Gateway hub.
Authorization Object S_RFCACL
Authorization check for RFC users, particularly for trusted systems
This authorization object contains the following fields −
RFC_SYSID − ID of the calling system or the domain of the satellite system.
RFC_CLIENT − Client of the calling system.
RFC_USER − ID of the calling user.
RFC_EQUSER − Flag that indicates whether the user can be called by a user with the same ID (Y = Yes, N = No)
RFC_TCODE − Calling transaction code.
RFC_INFO − Additional information from the calling system (currently inactive).
ACTVT − Activity
You need to know the system alias of the ABAP system in which you developed and configured the Gateway Service. There are two possibilities here −
If the GW_CORE and IW_BEP components are installed on the same ABAP system, then the system alias will probably be “LOCAL”.
If they are installed on different systems, then although system aliases can be any name you like, they generally follow the naming convention of <SID>_<Client> So the system alias for connecting to client 200 of system C11 would generally be C11_200.
However this is only a convention, not a rule.
We can use SAP Fiori Launchpad designer for configuring and creating groups and catalogs which can then be accessed from SAP Fiori Lauchpad which is a single entry point to all apps. We can search recently launched apps via search capability of Launchpad. Tiles which are available on Fiori Launchpad home page are configured using Launchpad Designer Tool.
We need to perform certain configuration tasks on front end server which are specific to app type. We need to Activate OData Services for transactional apps and Factsheets but not for Analytical apps. For analytical apps we need to configure access to SAP HANA data.
Static − It shows predefined static content (text, icon).
Dynamic − It shows numbers that can be read dynamically.
News Tile − Flips through news messages according to the configuration of the tile.
KPI Tile − It displays KPI’s in real time.
OData services have to be enabled in SAP Net Weaver gateway to establish mapping between technical OData name and the corresponding back-end service. In order to setup SAP Fiori Launchpad and Launchpad designer, we have to activate 5 specific OData Services.
Configuration Layer − Contains all content as delivered to customers including translation.
Customization Layer − Customers adjust content for all users in the system. We can use CUST layer for testing or other reasons. Content is transportable through customizing requests by customers. After customization, content is decoupled from configuration layer and no automatic synchronization after changes to delivered layer.
The Launchpad user must have the PFCG role SAP_UI2_USER_700 assigned. With this role the user can run the SAP Fiori Launchpad on the Personalization level and has authorization to execute the following OData services −
Product specific UI Add-Ons
ERP − UI for EHP 7 for SAP ERP 6.0
SRM − UI for EHP3 for SAP SRM 7.0
SCM − SAP SNC USABILITY 1.0
CRM − UI for EHP3 for SAP CRM 7.0
PORTF and PROJ MGMT − UI for SAP PORTF PROJ MGMT 6.0
GRC − UI for SAP ACCESS CONTROL 10.1 SP3
SAP Solution Manager is the standard platform for Application Lifecycle Management (ALM), and plays a decisive role within the ALM tools. Besides providing SAP functionality itself, SAP Solution Manager integrates the other tools to ensure a comprehensive approach.
Using UI theme designer you can create your own themes to adapt the visual appearance of applications.
One single tool for theming and branding SAP’s key user interfaces −
Apply your corporate branding and look to applications built with SAP UI technologies. The UI theme designer is a browser-based tool for cross-theming scenarios.
The tool is targeted at different user groups, including developers, visual designers, and administrators.
Key Features and Benefits −
Browser-based, graphical WYSIWYG editor −
Change the values of theming parameters and immediately see how it affects the visualization of the selected preview page.
Build-in preview pages −
Select built-in preview pages to see what your custom theme will look like when it is applied to an application −
Application previews (for example, Purchase Order Approval, SAP Fiori Launchpad)
Different levels of theming −
Quick theming (basic cross-technology theme settings)
Expert theming (technology-specific theme settings)
Manual LESS or CSS editing
Color palette for reuse −
Specify a set of parameters with the main color values defining your corporate branding.
Cross-technology theming −
Create one consistent theme that applies to various SAP UI clients and technologies −
SAPUI5 standard libraries (including SAP Fiori applications and SAP Fiori launchpad)
Unified Rendering technologies (such as Web Dynpro ABAP and Floorplan Manager)
SAP NetWeaver Business Client
Multiplatform and Multi UI technology support.
Low Total Cost of Ownership.
Authorization object: /UI5/THEME
/UI5/THMID (Theme Id):* = all themes
To be able to use the UI Theme Designer, Activate the following Internet Communication Framework (ICF) service nodes −
To be able to use SAP UI5 and NWBC preview pages, following ICF services must be activated −
You can use transaction /UI5/THEME_TOOL to download newly created theme and you will find css in one of those folders.
You can also transport themes from one system to another (Eg: from Test to Production system) using the tool for Customer Themes Maintenance.
Start the tool using transaction: /UI5/THEME_TOOL
Navigate to the theme you want to transport.
Select Transport and choose.
Transaction code SE11 is ABAP dictionary. By using this transaction code, you can create, change and display table entries and structures. At the initial screen, you can put any tables or structures to view, edit or even create a new one. Transaction code SE11 is normally used a ABAP programmer.
SAP Gateway Service Builder (transaction SEGW)) is a design-time environment, which provides developers an easy-to-use set of tools for creating services. The Code-based OData Channel consumes it and supports developers throughout the development life cycle of a service.
SE80 - Object Navigator
SE 80 is a tool to develop and navigate programs and dd-obj.
SE80 Object Navigator → means all the objects will be available there. In se80 in addition to viewing the objects related to programming and classes, there are more privileges to view such as some other repositories such as mime, object repository, object browser and all.
IW_BEP on Business Suite
IW_FND on Gateway Layer
The configuration is stored in the component.js file of the custom application. The component of the custom application needs to inherit from the main component of the original application. To make the location of the original application or component known to SAPUI5, it may be necessary to use register Module Path. The configuration in the customizing section contains the extension metadata and describes the objects that are replaced or extended.
Fragments are pieces of a UI without their own controller. The name of each view of fragment is important. A fragment must be named as <NAME>.fragment.xml and a view <NAME>.view.xml
SAPUI5 Views − Views are nothing but the application pages. We define our user interface by creating Views. Views is formed or created by using one or more Controls in it say Page,SimpleForm,Dialog,Label,Input etc. Every view has its own controller.
SAPUI5 Fragments − Fragments are the pieces of UI just like SAPUI5 Views. Whenever we need to use some similar UI parts many times in our application/views we create Fragments of those UI parts because Fragments are reusable and are light weight compared to VIews and Controls. Fragments are stored with in the application itself and can be used by that application only. Fragments are defined as View only and calling Views controller is shared with Fragment as Fragments are not having their own controllers.
If a Customization doesn’t run properly, all customization can be disabled by providing a single configuration. In support situation, this can be done by setting a breakpoint early in sap-ui-core.js and then executing the following code in the Console −
-window[“sap-ui-config”][“xx-disableCustomizing”] = true;
For security reason this setting is not possible using a URL parameter.
To dump the complete extensibility data, use the following command in the browser Console −
As a result, an object is returned in the Console which contains the customizing configuration, structured by type of customization and view name.
For fact sheets with integrated geographical maps, geographical coordinates and address data are transferred from the ABAP back-end server to the map provider using HTTP or HTTPS.
To ensure confidentiality and integrity of data, we strongly recommend protecting HTTP connections by using Transport Layer Security (TLS) or Secure Sockets Layer (SSL).
For Analytical apps you need SAP Hana as underlying database, no exceptions. SAP Fiori leverages.
XS engine by using virtual data models. Within XS engine there are 2 components: the HANA Live App content for respective business suite and Smart business component with the KPI modeler. Within the HANA live content the VDM reuse content exists which can be modified.
In below Pic, you have ABAP front end server which contains the UI Add-Ons for respective products used, NetWeaver Gateway with OData enablement, the central UI add-on and the KPI framework. These front end components have read access to the backend data via a trusted RFC connection.
A virtual data model (VDM) is a structured representation of HANA database views used in SAP HANA Live for SAP Business Suite and follows consistent modeling rules.
It provides direct access to SAP business data using standard SQL or OData requests. Business data is exposed through well-defined database views, operating directly on the tables of the SAP Business Suite systems and transforming them into consistent and easily understandable views.
VDMs allow you to access data in one component and use it in another without having to persist the data a second time.
A Virtual data model consists of the following types of views −
Query views are designed for direct consumption by an analytical application (based on HTML5, for instance) or a generic analytical tool (for example, BusinessObjects tools). They are always the top view in a hierarchy of views and are not designed for reuse in other views. However, the virtual data model also includes query views to support (showcase) applications based on the virtual data model.The interface of the query views is kept stable. The name of a query view ends with Query and provides output fields in a format consumable by UIs.
Reuse views are the hearts of the virtual data model. They expose the business data in a well-structured, consistent and comprehensible way, covering all relevant business data in SAP Business Suite systems. They are designed for reuse by other views and must not be consumed directly by analytical tools.
Private views encapsulate certain SQL transformations on one or several database tables or even other views. They are not classified as reuse views, as they might not carry clear business semantics, but are rather intended to be reused in other views. They are comparable to subroutines or (private) methods in programming languages. A private view may be based on database tables, other private views, or on reuse views.
Value help views (VHVs) provide the value list for a specific business entity that is used in a value help in a query view. Relevant business entities are specified by an identifier or code. A maximum of one VHV is defined for each business entity per package. A VHV is included either in an underlying package to the business query views that make use of it, or in the same package. In SAP HANA, for each main package a specific VHV exists for a specific business entity.
Three routing rules need to be defined in SAP NWG system −
Two routing rules need to be defined in the HANA studio −
The Launchpad administrator must have the PFCG role SAP_UI2_ADMIN assigned.
SAP_UI2_ADMIN is a composite role containing the following release-dependent roles −
SAP_UI2_ADMIN_700 for SAP NetWeaver 7.0
SAP_UI2_ADMIN_702 for SAP NetWeaver 7.0 enhancement package 2
SAP_UI2_ADMIN_731 for SAP NetWeaver 7.0 enhancement package 3 and SAP NetWeaver 7.3 enhancement package 1
What is Next ?
Further you can go through your past assignments you have done with the subject and make sure you are able to speak confidently on them. If you are fresher then interviewer does not expect you will answer very complex questions, rather you have to make your basics concepts very strong.
Second it really doesn't matter much if you could not answer few questions but it matters that whatever you answered, you must have answered with confidence. So just feel confident during your interview. We at tutorialspoint wish you best luck to have a good interviewer and all the very best for your future endeavor. Cheers :-)