SAP Fiori is a new user experience (UX) for SAP software and applications. It provides a set of applications that are used in regular business functions like work approvals, financial apps, calculation apps and various self-service apps.
SAP Fiori provides 300+ role-based applications like HR, Manufacturing, finance, etc. When you open the SAP Fiori home page application, you will see a picture of the flowers. It is because Fiori means ‘flowers’ in Italian.
SAP Fiori provides all business roles in real time on compatible hand devices. It offers business roles on easy to use functions, simple with unmatched responsiveness on desktop, smartphones and Tablets.
SAP Fiori enables multiple device applications that allow users to start a process on their desktop/laptops and to continue that process on a smartphone or on a tablet. SAP has developed Fiori Apps based on User interface UI5.
When SAP Fiori is combined with the power of the SAP HANA, it provides an unmatched application response and query-execution time. SAP Fiori user experience (UX) is used to provide a personalized and role-based user experience for enterprise-wide engagement across lines of business.
When a research was conducted, it was found that most of the SAP users use SAP User Interface to access the applications. These included common applications related to Manager-employee interactions such as leave request, travel request, etc. These GUI had more than 300,000 screens with various functions in it. SAP checked the most frequently used application and then decided to renew these applications. This is how SAP Fiori was born.
There are five design principles for SAP Fiori UI5. These principles make SAP Fiori simple and decompose the different transactions into simple task based UI applications.
Role-Based − SAP has decomposed various SAP transactions and changed them into beautiful user interactive applications that show only most relevant information to the users.
Responsiveness − When SAP Fiori is combined with the power of SAP HANA, it provides an unmatched application response and query executions time.
Simple − To make SAP Fiori simple to match the user demand, SAP has designed it as a 1-1-3 scenario. This means 1 user, 1 use case and 3 screens.
Seamless Experience − SAP has provided all the Fiori apps based on the same language and it does not matter on the deployment and platform.
Delightful − SAP Fiori was designed to work with ECC 6.0 to make it easy for the users and to deploy on the existing SAP system.
SAP Fiori apps are divided into three categories. They are distinguished on the basis of their function and infrastructure requirement.
The most important features of Transactional Apps are −
The first release of SAP Fiori included 25 transactional apps.
Transactional apps in SAP Fiori are used to perform transactional tasks like a manager-employee transactions such as leave request, travel requests, etc.
Transactional Apps run best on SAP HANA database but can be deployed with any database with acceptable performance. These apps allow a user to run simple SAP transactions on the mobile devices as well as desktop or laptops.
Example − Leave Request, Travel Request, Purchase Order.
The important features of a Fact sheet are given below.
Fact sheets are used to drill the key information and contextual information in business operations. In SAP Fiori tiles, you can drill down to further details.
It also allows you to navigate one-fact sheet to all its related fact sheets.
Fact sheets also allow you to navigate to Transactional apps to run SAP transactions. A few Fact sheets also provide an integration option of geographical maps.
You can call Fact sheets from Fiori Launchpad search results, from other fact sheets or from Transactional or Analytical apps.
Fact sheets only run on SAP HANA database and also require an ABAP stack and they cannot be ported to SAP HANA Live tier-2 architecture.
Example − There is a fact sheet app with the center objects having details about vendor contract. You can drill down to further details like vendor details, contract terms, item details, etc.
Analytical apps are used to provide role-based real time information about the business operations. Analytical apps integrate the power of SAP HANA with SAP business suite. It provides real time information from large volume of data in front-end web browser.
Using Analytical apps, you can closely monitor Key Performance indicators KPIs. You can perform complex aggregations and calculations of your business operations and react immediately as per the changes in the market condition.
SAP Fiori Analytical apps run on SAP HANA database and use Virtual data models.
User Experience (UX) is basically, about an overall experience that a person has while using any product, a website or an application. The application may be on either a mobile device, tablet or a desktop or laptop. User Experience should be simple to use so that the users can achieve their goals easily and interact with SAP system.
User Experience comprises of right balance of technology, business needs and desirability.
UX strategy is basically about the following three design principles −
SAP UX strategy consists of three components −
New − New provides a consumer grid user experience for the new applications i.e. all the applications, which are yet to be built.
Renew − Renew is applied to the existing applications.
Enable − Enable is to provide a customer an ability to improve user experience of any SAP software to allow them to decide which business scenario is critical for them.
The following are the requirements for learning SAP Fiori −
The key components in high-level landscape of SAP Fiori architecture are given below.
SAP Web dispatcher is the first point of contact in SAP Fiori architecture for end users. This handles all web browser requests from end users via mobile devices or laptops.
It is an entry point for all HTTP/HTTPS requests and defines if a system has to accept or reject the requests and the server where request should go. It can reject or accept connection to SAP Fiori system.
Transactional apps can run on any database but Fact sheets and Analytical apps requires SAP HANA database to run.
SAP ABAP front-end server contains all the UI components of Fiori system and NetWeaver gateway. These UI components consist of central UI add on, SAP UI5 control library and SAP Fiori Launchpad. It also contains product specific UI. Add-ons contain UI development for respective business suite such as ERP, SCM, SD, MM, etc.
SAP NetWeaver Gateway is used to setup a connection between SAP business suite and target clients, platforms and framework. It offers development and generation tools to create OData services to different client development tools.
SAP ABAP Back-End Server is used to contain the business logic and the back-end data. Search model for fact sheets and SAP business suite is contained in ABAP back-end server.
HANA XS engine is used to run all analytical apps in SAP Fiori. It contains Fiori app content and virtual data-model reuse content, which is provided through SAP HANA Live.
HANA XS Engine consists of two components −
HANA Live content contains VDM reuse content, which can be used for extensibility purpose.
Notes −
Transactional apps in SAP Fiori does not necessarily require SAP HANA database to run and can run on any database.
Fact Sheets, Analytical apps and Smart Business run only on SAP HANA database with no exceptions allowed
HANA is required for search model function of Fact Sheets to work.
The data requested in Fact Sheets via search models is directly pulled from HANA database.
SAP Fiori apps are divided into three categories. They are distinguished on the basis of their function and infrastructure requirement.
As mentioned earlier, Transactional apps in SAP Fiori does not necessarily require SAP HANA database to run and can run on any database. Fact Sheets, Analytical apps and Smart Business run only on SAP HANA database with no exceptions.
The picture given below shows SAP Fiori Architecture for SAP Fiori different apps types.
Fact Sheets require Search models to perform search capability in Fiori Apps. Fact sheets are used to drill the key information and contextual information in business operations. In SAP Fiori tiles, you can drill down to further details. It also allows you to navigate from one fact sheets to all its related fact sheets.
Analytical apps and Smart Business apps data come from HANA database through HANA XS Engine.
HANA Live content contains Virtual Data Model reuse content, which can be used for extensibility purpose.
The user places request via Web browser using HTTPS. Trusted RFC is used to communicate between ABAP Front-End and Back-End server.
While installing and configuring SAP Fiori apps system, it is suggested to check the minimum hardware and software requirement to install different components as per Fiori apps requirement.
It is important to understand the concept of UI Add-Ons and NetWeaver Gateway, support packs, which are installed on ABAP Front-End server. The central UI Add-Ons are required for SAP UI5 control library and Launchpad. NetWeaver Gateway is used to set up the connection to back-end server by creating OData service.
If you install NW 7.4 for Front-end server, all central UI Add-Ons and Gateway components are part of that installation.
If you install NW 7.31 SPS04 for Front-End server, central UI Add-Ons and Gateway components have to be installed separately.
Product Version | Required SAP NW Gateway Installation | Components automatically installed with SAP NW Gateway |
---|---|---|
EHP3 FOR SAP NETWEAVER 7.0 (AS ABAP) |
SAP NETWEAVER GATEWAY 2.0 SPS07 (Gateway Server Core NW 703/731) If you wish to install "Approval Requests" apps, you additionally have to install − SAP NETWEAVER GATEWAY 2.0 SPS07>SAP IW PGW 100 |
GW_CORE 200 SAP IW FND 250 SAP WEB UIF 731 IW_BEP 200 |
SAP NETWEAVER 7.4 (AS ABAP), SAP NETWEAVER 7.4 FOR SUITE (AS ABAP) |
All required components are included in the SAP NetWeaver Installation (SAP_GWFND) If you wish to install "Approval Requests" apps, you additionally have to install − SAP NETWEAVER GATEWAY 2.0 SPS07>SAP IW PGW 100 |
The minimum hardware requirements for SAP NetWeaver Gateway front-end server are as follows −
Requirements | Specifications |
---|---|
Processor | Dual Core(2 logical CPUs) or higher, 2 GHz or higher |
Random Access Memory (RAM) | 8 GB or higher |
Hard Disk Capacity | 80 GB primary, or higher |
HANA 1.0 database requirement is only for Fact Sheets and Analytical Apps.
HANA Live is included with suite on HANA but it is made available as separate package to be installed. SAP HANA Live uses the integrated scenario means SAP HANA Live shares a SAP HANA Appliance with the Business suite.
SAP HANA Live for SAP ERP | |
---|---|
Product | SAP HANA Live for SAP ERP |
Release | 1.0 SPS10 |
Software Components | HCO_HBA_ECC |
Based On | SAP HANA Appliance Software SPS 08 or higher |
Documentation Published | April 2015 |
You install this software component as an add-on for SAP HANA. The SAP HANA appliance software comes pre-installed on a specific appliance hardware system delivered in conjunction with leading SAP hardware partners.
System Landscape requirement for SAP Fiori are summarized in the table given below.
SAP NetWeaver Gateway is used to setup a connection between SAP business suite and target clients, platforms and framework. It offers development and generation tools to create OData services to different client development tools.
SAP NetWeaver gateway provides an easier way for the consumption on business logic and content for SAP Back-end system on web applications. It also reduces the complexity to access SAP data and provides easy interfaces to decrease the development time.
SAP NetWeaver Gateway is a technology that provides a simple way to connect devices, environments and platforms to SAP software based on market standards.
Non-disruptive, any SAP business suite.
Ease to develop simple APIs and does not require any tool knowledge.
Based on REST, ATOM/OData. It allows connectivity to SAP applications using any programming language or model, without the need for SAP knowledge, by leveraging REST services and OData/ATOM protocols.
It provides plug-ins for well-known IDEs such as Eclipse, Visual Studio 2010 and XCode.
This involves configuring Back-end server as trusting system.
Step 1 − Use T-code: SM59
Step 2 − Click on create icon as shown below.
Step 3 − Enter the details as shown below −
Step 4 − Go to the Technical Settings tab and enter the details as explained below.
Step 5 − Enter the gateway host in the Target Host field and Instance number in the System Number field.
Step 6 − Go to the Logon & Security tab and enter the details.
Step 7 − Enter the client number and click on Current user for authentication.
Step 8 − Select Trust Relationship as Yes and click the save icon at the top.
Step 9 − Select Go back to the home screen and use T-code: SMT1
Step 10 − Click the create icon as shown below.
The Trusting Wizard will open.
Step 11 − Enter the details of RFC destination that you have just created and click Continue.
Step 12 − The information of trusted system is displayed. Click the Save button.
Here, you have defined trust relationship between your SAP system and NetWeaver Gateway host by configuring SAP system to be trusting system and NW host to be trusted system. This enables the remote logon for users to use the user data in SAP NetWeaver gateway and SAP system.
There are two different deployment options available to deploy SAP NetWeaver gateway for SAP Fiori configuration.
In this type of deployment option, central UI Add-On, Product specific UI Add-Ons and SAP NetWeaver gateway is contained in ABAP front-end server. The back-end server contains business logic and back-end data. Development takes place in ABAP back-end system.
The services are deployed on a back-end system and registered on the server. The Gateway service is deployed in Gateway back-end system. Either IW_BEP is deployed or system running on the 7.4 or higher version leverage the core component SAP_GWFND.
Advantages
It allows changes to the UI without development authorization in back-end.
It provides single point of maintenance for all UI issues.
It provides central place for theming and branding of Fiori Apps.
It provides single point of access to back-end system.
As there is no direct access to back-end system, it has enhanced security.
Direct local access to metadata (DDIC) and business data and ease of reuse of data.
Disadvantages
Note − SAP recommends Central Hub deployment option for production environment.
In this option, Gateway server functionalities are used on one dedicated server, the hub system. As against the first option, service deployment takes place on the hub system.
This option is used if either no development must be performed on the back-end system or in case of releases prior to 7.40. if it is not allowed to deploy the Add-On IW_BEP in the back-end. In this case, the developer is limited to the interfaces that are accessible via RFC in the back-end.
Development takes place in Gateway hub system and Business suite back-end systems are not touched.
IW_BEP or SAP_GWFND is running in Gateway hub system and nothing is touched in SAP Business suite.
Advantages
In addition to the benefits given for the first option, this option has the advantage that it does not require the installation of Gateway Add-Ons in back-end system.
Disadvantages
There is no direct access to metadata (DDIC) and business data. Therefore, reuse of data is limited.
GENIL objects cannot be used remotely.
In this configuration, access is limited to remote enabled interfaces like RFC modules, BAPI’s etc.
In Embedded deployment architecture, development takes place in SAP Business suite back-end system and Gateway system is also installed in the same system. Services are registered as well as published in the SAP Business Suite back-end system.
IW_BEP or SAP_GWFND is running in the same system in which SAP Business suite is installed.
Advantages
Disadvantages
System should not be used as hub for additional Back-End systems.
In case of multiple SAP Business Suite systems, Gateway has to be configured multiple times.
This configuration is recommended only for sand box purposes.
Note − You should not use a SAP Business Suite System with embedded deployment as a hub system for additional back-end system. The reason is that it might lead to a situation where the SAP NetWeaver Gateway release of the hub system is lower than the version of the SAP NetWeaver Gateway back-end components of the remote back-end system.
To avoid such situation, you can use embedded deployment option for your SAP Business Suite systems.
If you go for a hub-based architecture, you should use a dedicated SAP NetWeaver Gateway Hub system that should run on the latest release of SAP NetWeaver Gateway.
Step 1 − Login to SAP Fiori back-end system using SAP GUI as shown in the image given below.
Step 2 − On the System menu, click Status.
Step 3 − A new window opens showing the System Status.
Under SAP System data, click the icon (magnifying glass) below the label Component version.
Step 4 − This will show you the list of the components installed on SAP back-end system as per NetWeaver Gateway Release.
With NW 7.31, IW_BEW and GW_Core components are installed and for NW 4.0, SAP_GWFND is installed and there are no individual components.
Now in this system, you have NW system installed on back-end system and all the UI Add-Ons components are in front-end system. Therefore, it represents a Hub Architecture method of deployment.
OData is used to define best practices that are required to build and consume RESTful APIs. It helps you to find out changes, defining functions for reusable procedures and sending batch requests etc.
Some of the important features are −
OData provides facility for extension to fulfill any custom needs of your RESTful APIs.
REST stands for Representational State Transfer and it is sometimes spelled as "ReST".
It relies on a stateless, client-server, cacheable communication protocol. In virtually all cases, the HTTP protocol is used.
REST is defined as an architecture style for designing network applications.
OData helps you focus on your business logic while building RESTful APIs without having to worry about the approaches to define request and response headers, status codes, HTTP methods, URL conventions, media types, payload formats and query options etc.
OData RESTful APIs are easy to consume.
The OData service life cycle includes span of an OData service. Given below are the key steps to be considered in an OData Service Life Cycle.
Activation of OData service.
Maintaining OData service.
Maintaining of models and services, up to the cleanup of the metadata cache.
RESTful applications use HTTP requests to post data to create or update, read data and delete data. REST uses HTTP for all four CRUD (Create/Read/Update/Delete) operations.
REST is a lightweight alternative to mechanisms like RPC (Remote Procedure Calls) and Web Services.
Given below are the components of the REST Architecture.
SAP Fiori installation involves installation of front-end, back-end components and in case of Analytical apps, installation of HANA components. These components are delivered as separate products and hence, have to be installed separately.
With the integration of SAP Fiori apps library and Maintenance planner, installation process has been simplified. It allows you to select from the list of available apps from SAP Fiori Apps library, their installation and configuration prerequisites.
A summarized step-by-step procedure is shown in the image given below.
Step 1 shows how to check the prerequisites for the installation according to different SAP Fiori Apps.
Step 2 to Step 5 determine the front-end and back end components to be installed as per different Fiori Apps.
Step 6 to Step 10 determine the Configuration steps to be performed for setting up the SAP Fiori environment.
Let us understand the procedure in detail.
Checking prerequisites includes checking the following −
On SAP Front-End server, some components have to be installed for SAP NetWeaver gateway installation. If you install NW 7.31 SPS04 on your front-end server, the components given below have to be installed separately.
If you install NW 7.4 SPS04 on your front-end server, these components are installed automatically.
You can use Software Update Manager with Maintenance Optimizer for the installation.
To download the software − SAP SWDC
Follow the procedure depicted in the images below.
Click Installation and Upgrades as shown in the following screenshot.
Click the link A-Z index.
Once the page with A – Z index opens, click N → NetWeaver Gateway → SAP NetWeaver Gateway 2.0.
The next step is to install Central UI-Add On and SAP Fiori Launchpad. Install Central UI Add-On according to your NetWeaver release.
NetWeaver Gateway Version | Central UI Add-on | Components Names |
---|---|---|
EHP3 FOR SAP NETWEAVER 7.0 (AS ABAP) (SPS 04 as minimum) | UI ADD-ON 1.0 FOR NW 7.03 (SPS 06 as minimum) |
SAP UI ADD-ON INFRA V1.0 SAP UI2 SERVICES V1.0 SAP UI5 CLIENT RT AS ABAP 1.00 SAP IW BEP 200 SAP UI2 FOUNDATION V1.0 SAP UI2 IMPL. FOR NW 7.31 V1.0 |
SAP NETWEAVER 7.4 (AS ABAP), SAP NETWEAVER 7.4 FOR SUITE (AS ABAP) (SPS 04 AND COMPONENT SAP UI 7.40 SP05 for both as minimum) |
All required components are included in the SAP NetWeaver 7.4 installation. Ensure that the above mentioned required components are in place. |
The next step is to install product-specific UI Add-On according to your Business suite −
All these Add-Ons are non-modifying. It means, no changes in the back-end is required and no down time is required to install these Add-Ons.
OData part is delivered via back-end enhancement pack by the product i.e EHP7 for SAP ERP 6.0. You do not require installation of SAP Fiori Add-On components separately.
To check installed components in SAP Fiori −
Login to SAP Logon → Go to Back end server → System → Status → Component version.
The above SRA components are for particular Apps. These are OData service available in back-end system.
SAP Fiori Launchpad is known as the entry point to Fiori apps system on mobile and desktop devices. It contains various tiles in Fiori system. Tiles are square objects that are used to access different Fiori Apps. Access to these tiles are based on the user roles.
SAP Fiori tiles run on multiple device types and provides a single point of access for business applications such as transactional, analytical, factsheet, smart business apps.
The key points about SAP Fiori Launchpad are given below.
Web-based entry point to use SAP Business applications across platforms and devices.
Delivered as an out-of-the-box thinking to the I HTML client.
High productivity for end users using features like theming, search integration, customization, etc.
Offers single entry points for end users using multiple device types.
When you launch the Fiori Launchpad, it only shows fiorilaunchpad.html as the end of the URL. This is because the fiorilaunchpad.html is the only HTML document, which is loaded to the browser, making it the only SAPUI5 root application.
If you are a customer using Launch page this is different in that the launch page had an index.html for each application. This change provides a more holistic user experience by allowing page navigation & transitions.
Given below are the key benefits that can be achieved using SAP Fiori Launchpad.
Simple − intuitive, easy and coherent user experience.
Role based − simplified role based navigation and business function access.
Contextual − real time, contextual and personalized access.
Responsive − consumption a cross devices, versions and channels with a single user experience.
Multi-platform − planned to be running on multiple platforms – ABAP (available today), SAP Portal, SAP HANA Cloud Portal and HANA.
To see the implementation steps and requirement of any of SAP Fiori Apps, go to help.sap.com/Fiori.
To check the URL of SAP Help page, go to Google.com and enter the App name.
This is the front-end component for My Timesheet apps in Launchpad for activating SAP Fiori UI5 application −
Login to the front-end server using SAP logon and run the T-code: SICF
A new window will open. Click Execute and go to the path mentioned below −
Default_host → SAP → bc → ui5_ui5 → sap → search for hcm_ts_cre and double click.
You can see the URL path for My Time Sheet application. Copy this path to the notepad and remove default-host and add service name in the end.
Now run the T-code: SE80
A new window will open. Enter the name of BSP application and UI5 Application name and click on display button as below −
Go to componenet.js and make note of the component name.
Now, to configure the Launchpad, use T-code: LPD_CUST and go to New Launchpad.
Enter the details for the labels Role, Instance, Description and click on Continue and Yes.
A new window will open. Click on the new Application.
Enter the details; Link Text, Application Type, URL and click Show Advanced Parameters.
Enter the details, Application Alias and SAP UI5 component name and click the save button on the top.
You can create a tile for this by going to the Launchpad designer and to select, create target mapping.
Click the Plus sign and enter the name for the tile and click save.
The next step is to create the target mapping. Go to Target mapping and click Create target mapping.
A new window will open. Enter the details as shown in the image below.
We have learnt how target mapping is done. The next step is to create a tile.
Go to the tile tab and click the ‘+’ sign and select the type of tile to be created and enter the details.
As selected a static tile, to enter the details and click on the save icon.
To assign the role to this, go to the front-end system and use the transaction PFCG.
Enter the Role name. Click single role and save. Next, click the Menu tab.
Go to the User tab, enter the user details that you want to use, to access the Launchpad and save.
To Add the Catalog to a group in Launchpad, login to Launchpad and select the Tile Catalog.
Select the catalog you have created and click on ‘+’ sign to add to a group.
If you have selected My Home as group name, go to back to Launchpad home page and it will show My Time tile there.
This is how we can configure a Launchpad and create a new catalog and tiles in Launchpad designer.
OData is used to define best practices that are required to build and consume RESTful APIs. It helps you to find out changes, defining functions for reusable procedures and sending batch requests etc.
Some of the important features are −
OData provides facility for extension to fulfill any custom needs of your RESTful APIs.
REST stands for Representational State Transfer and it is sometimes spelled as "ReST".
It relies on a stateless, client-server, cacheable communication protocol. In virtually all cases, the HTTP protocol is used.
REST is defined as an architecture style for designing network applications.
OData helps you focus on your business logic while building RESTful APIs without having to worry about the approaches to define request and response headers, status codes, HTTP methods, URL conventions, media types, payload formats and query options etc.
OData RESTful APIs are easy to consume.
The OData service life cycle includes span of an OData service. Given below are the key steps to be considered in an OData Service Life Cycle.
Activation of OData service.
Maintaining OData service.
Maintaining of models and services, up to the cleanup of the metadata cache.
RESTful applications use HTTP requests to post data to create or update, read data and delete data. REST uses HTTP for all four CRUD (Create/Read/Update/Delete) operations.
REST is a lightweight alternative to mechanisms like RPC (Remote Procedure Calls) and Web Services.
REST is defined as an option for web services and Remote Procedure calls. It is used for designing network applications.
REST services like a web services and supports below features −
Given below are the components of the REST Architecture.
In REST, both the state and the functionality are presented as resources. Resources are the key element of a RESTful design, as opposed to "methods" or "services" used in RPC and SOAP Web Services.
RPC calls like "getProductName" and "getProductPrice" are not used in REST. You view the product data as a resource and this resource should contain all the required information.
It means that a single resource should not contain detailed data and it contains links to additional web pages.
In REST client–server model, one component server can be other component client.
Each request should contain details about the connection to each client and should not reply on the previous connections to the same client.
The protocol must allow the server to explicitly specify which resources may be cached, and for how long.
To improve performance and scalability, Proxy servers can be used. Any standard HTTP proxy can be used.
Use the T-Code: SEGW
A new window will open. Click Create Project.
Now, follow the steps given below −
Enter the Project name as shown in the image below. It should be unique and should not contain any special characters.
Enter the description of the project as it is a mandatory field.
Enter the different attributes such as Project Type,Generation Strategy.
Select Package or click the local object, if you want to create this locally.
Once you click the local object, Service builder will create a new project with empty folder structure. All these are automatically created with a new project and click the save icon.
Now, to create an Entity type in data model. Expand the Data model → right click → Create → Entity Type.
Enter the Entity type name and to create an entity set automatically, click on related entity set check box option.
Click the option Insert row to add another entity type in data model and add the details as given below. Click Save.
In a similar way, you can create an entity set by right-clicking the data model and enter the details or by using the Insert Row option in Entity Type.
The next step is to define association and relationship between different entities. It can be created in two ways, by using a wizard or by using mask edit view.
Right click data model → Create → Association or
Right click Association folder → Create
Double click Association folder → Edit Mode → Insert Row
Enter the details of the given labels −
Click the Association set. Right click data model → Create → Association Set.
To create Function Import in Service Builder, right click Data Model → Create → Function Import.
Enter the name of Function Import and you can select from other options and click the save icon.
To define complex type, go to Data Model → right Click → Complex type.
Enter the details as per the requirement and Save.
This is how you can create Data model, Entity set, type, Association and Complex types.
There are four options available to import Data Model from a file −
To import data model, follow the steps given below −
Run T-code: SEGW
Right-click Project Name → Import → Select the import method
Enter the path and import Entity types, Entity sets, associations and complex types.
Go to Data Model → Service Implementation → select Entity Set for Mapping
Enter the local or remote system data source, type and Name and save.
This will enable mapping node under query operation. You can do mapping for single objects or can also use the option of Propose mapping option.
Go to Data Model. Double-click Service Maintenance.
Select the system you want to register and click the Register option at the top.
Select the project → Local Object and then save by clicking the tick mark.
Check the Service Registration status.
To maintain the service, click the Maintain button. Another window will open.
Click Call browser and select to use this service as URL. Click OK.
A browser will open; enter the user name and password to see if service is exposed as OData service.
The most important features of Transactional Apps are −
The first release of SAP Fiori included 25 transactional apps.
Transactional apps in SAP Fiori are used to perform transactional tasks like a manager-employee transactions such as leave request, travel requests, etc.
Transactional Apps run best on SAP HANA database but can be deployed with any database with acceptable performance. These apps allow a user to run simple SAP transactions on the mobile devices as well as desktop or laptops.
Example − Leave Request, Travel Request, Purchase Order.
Before starting the configuration for SAP Fiori Transactional Apps, complete infrastructure of SAP Fiori Apps must be installed.
Once it is installed, the next step is to configure front-end and back-end servers.
Step 1 − Configuration of SAP Web Dispatcher
Prerequisites −
Procedure −
Step 2 − Configuration of front-end server.
Step 3 − Configuration of back-end server.
Transactional Apps run on any DB and does not require specifically HANA database to run like Fact Sheets and Analytical Apps.
All the SAP required notes are applied.
Back-end system functions are up and running.
To connect SAP NW Gateway to SAP Business suite, configure back end system as the ‘trusting’ system.
Configure Gateway server as trusted system by creating a type 3 RFC destination on Gateway to back end.
More details are already provided under NetWeaver Gateway Configuration.
Create two system alias for the back-end system − One for the back-end system and another for the back-end flow.
T-Code: SPRO → SAP Reference IMG
Activate the services for Launchpad designer. Select the services for Launchpad designer and click the ICF node → Activate.
Ensure that system alias should be local while activating these services.
Use T-code: SICF → Execute → Default Host → Follow
These ICF services must be activated −
Once OData and ICF services are activated, the next step is to configure SAP Fiori Launchpad. It includes −
Use the T-code: PFCG
Search for the roles as above.
You can check Menu, authorizations and users to check further details. Go back to main service and click on copy role and then Save.
The important features of a Fact sheet are given below.
Fact sheets are used to drill the key information and contextual information in business operations. In SAP Fiori tiles, you can drill down to further details.
It also allows you to navigate one-fact sheet to all its related fact sheets.
Fact sheets also allow you to navigate to Transactional apps to run SAP transactions. A few Fact sheets also provide an integration option of geographical maps.
You can call Fact sheets from Fiori Launchpad search results, from other fact sheets or from Transactional or Analytical apps.
Fact sheets only run on SAP HANA database and also require an ABAP stack and they cannot be ported to SAP HANA Live tier-2 architecture.
Example − There is a fact sheet app with the center objects having details about vendor contract. You can drill down to further details like vendor details, contract terms, item details, etc. Configuration of Enterprise Search
T-Code: SICF and activate the seven services given below.
Under the path /default_host/sap/bc/webdynpro/sap
Use the T-Code: SE38
In the program field, Enter ESH_ADM_SET_TREX_DESTINATION
The next step is to search RFC connection created earlier and assign the role − SAP_ESH_LOCAL_ADMIN
After setting up the above role, next is to run T-Code: ESH_COCKPIT and click Create.
Select the model you want to use with embedded search and click the create connector button.
In Admin Cockpit, select the connector you want to index and click on activate. Select the search and analysis model and click on start so that the indexing starts immediately. Click OK.
SAP Fiori Search and Factsheets - HANA Search for SAP Business suite BSESH_HANA_SEARCH.
Enable Factsheets: HANA navigation for SAP Business suite BSCBN_HANA_NAV.
Analytical apps are used to provide role-based real time information about the business operations. Analytical apps integrate the power of SAP HANA with SAP business suite. It provides real time information from large volume of data in front-end web browser.
Using Analytical apps, you can closely monitor Key Performance indicators KPIs. You can perform complex aggregations and calculations of your business operations and react immediately as per the changes in the market condition.
SAP Fiori Analytical apps run on SAP HANA database and use Virtual data models.
There are two types of Analytical Apps −
SAP Fiori smart business apps are used to monitor your most important KPI’s in the real time and to make changes as per market conditions immediately.
Note − There are around 84 Analytical apps under this umbrella and out of these, you have 69 apps are smart business apps and rest 15 are Analytical Apps.
Analytical apps can run only on SAP HANA database, unlike transactional apps that can run on any database. SAP Fiori leverages XS engine by using virtual data models and within XS engine, there are 2 components −
SAP HANA Live provides exceptional capability analytics for all business suite by enabling industry standard access to SAP data through data models.
The data models are used for analytical purpose using views in HANA database. The views form a virtual data model that a customer and partner can reuse.
Virtual Data Models provide a way to process massive quality of data in HANA database. A UI rich client can consume these views without the use of any additional software. There are three types of view −
Private View − Private views are SAP views and you cannot modify these views.
Reuse View − Reuse views are heart of SAP HANA model and they expose the data in structural way and they are designed to be reused by other views.
Query View − Query views are top views in hierarchy and designed for direct consumption by Analytical apps and cannot be altered.
It is a tool used to model KPI and report tiles for monitoring the business data using Fiori Launchpad.
You can define KPIs and reports to which you can apply different calculations and it enables you to make adjustment according to changing market conditions.
You can configure drill-down views.
The UI theme designer is a browser-based tool that allows you to develop your themes by modifying one of the theme templates provided by SAP.
Example − You can change the color scheme, or add your company's logo. The tool provides a live preview of the theme while you are designing.
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. Use it to build your corporate identity themes easily by modifying one of the theme templates provided by SAP. For example, you can change the color scheme, or add your company's logo. The tool is targeted at different user groups, including developers, visual designers, and administrators.
The key features and benefits are as given below.
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 − Example: Purchase Order Approval, SAP Fiori Launchpad
Control previews.
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
SAP UI Client | UI parts can be themed |
---|---|
Web Dynpro ABAP |
You can theme applications that do not use the following UI elements −
|
Floorplan Manager for Web Dynpro ABAP (FPM) | You can theme applications that do not use HTML Islands or chart UIBB's |
SAPUIS | You can theme SAP standard libraries. Custom SAPUI5 libraries cannot be themed. |
SAP NetWeaver Business Client (NWBC) |
|
Login to SAP Fiori Front-end server.
You can use T-Code: Theme Designer or use shortcut as shown below and login.
Once you login, you will all the default templates provided by SAP for Theme Designer. Select the default theme and click Open.
Enter the Fiori Launchpad link and Name of the application and click ADD.
From right side, you can select Color, font, Image and other properties. You can edit colors as shown in the snapshot given below.
To save the Theme click the save icon as shown below. You also have an option to save and build option.
Once you select Save and Build, it will start saving and once it is completed, you will get a confirmation Save and Build completed.
To get the link of this Custom Theme, use T-code:theme_tool.
Select the Theme that you have created and click the Info tab.
Use Ctrl+Y to copy the URL from the screen and make a note of this.
Securing SAP Fiori system ensures that the information and processes support your business needs, are secured without any unauthorized access to critical information.
You must ensure that the user errors, negligence, or attempted manipulation of your system must not result in loss of information or processing time.
All these security policies should apply to all components in a Fiori system.
Managing users in SAP Fiori −
While launching SAP Fiori app, the request is sent from the client to the ABAP front-end server by the SAP Fiori Launchpad via Web Dispatcher. ABAP front-end server authenticates the user when this request is sent. To authenticate the user, the ABAP front-end server uses the authentication and single sign-on (SSO) mechanisms provided by SAP NetWeaver. The mechanism mentioned below can be used for authentication −
SPENGO/KERBEROS
SPNEGO is used when a client application wants to authenticate to a remote server, but neither end is sure what authentication protocols the other supports. The pseudo-mechanism uses a protocol to determine what common GSSAPI mechanisms are available, selects one and then dispatches all further security operations to it. This can help organizations deploy new security mechanisms in a phased manner.
SAP Logon Tickets
SAP Logon Tickets represent user credentials in SAP systems. When enabled, users can access multiple SAP applications and services through SAPgui and web browsers without further username and password inputs from the user. SAP Logon Tickets can also be a vehicle for enabling single sign-on across SAP boundaries; in some cases, logon tickets can be used to authenticate into third party applications such as Microsoft-based web applications.
X.509 Certificates
An X.509 certificate contains information about the identity to which a certificate is issued and the identity that issued it. Many of the certificates that people refer to as Secure Sockets Layer (SSL) certificates are in fact X.509 certificates.
Once initial authentication is done on the ABAP front-end server, a security session is established between the client and the ABAP front-end server.
This allows SAP Fiori apps and Launchpad to send OData requests to the ABAP back-end server. These requests are communicated securely by using trusted RFC.
Secure Network Communications (SNC) integrates SAPNetWeaver Single Sign-On or an external security product with SAP systems. With SNC, you strengthen security by using additional security functions provided by a security product that are not directly available with SAP systems.
SNC protects the data communication paths between the various client and server components of the SAP system that use the SAP protocols RFC or DIAG. There are well-known cryptographic algorithms that have been implemented by the various security products, and with SNC, you can apply these algorithms to your data for increased protection.
Imporatant Features −
SNC secures the data communication paths between the various SAP system client and server components. There are well-known cryptographic algorithms that have been implemented by security products supported and with SNC, you can apply these algorithms to your data for increased protection.
With SNC, you receive application-level, end-to-end security. All communication that takes place between two SNC-protected components is secured.
Additional security features like Smart cards can be used that SAP does not directly provide.
You can change the security product at any time without affecting the SAP business applications.
You can apply three levels of security protection. They are −
When using authentication only, the system verifies the identity of the communication partners. This is the minimum protection level offered by SNC.
When using integrity protection, the system detects any changes or manipulation of the data, which may have occurred between the two ends of a communication.
When using privacy protection, the system encrypts the messages being transferred to make eavesdropping useless. Privacy protection also includes integrity protection of the data. This is the maximum level of protection provided by SNC.
SAP Fiori Data Flow covers the data flow process in Fiori system landscape when a request is made via Launchpad by a user. This includes run time data flow in front-end server and back-end server.
Front-end server − Web server and OData Proxy.
Back End server − OData provider.
SAP Fiori uses HTTP/HTTPS protocol. It is a request-response runtime architecture.
UI Objects and Launchpad data are stored in front-end server. When Launchpad is called, the app reads Launchpad definition via OData service call.
/UI2/PAGE_BUILDER_PERS is one of the OData service for Launchpad.
SAP Fiori Front-end server acts as Web server (HTTPS).
It contains all registered OData services and acts as an end point for OData service.
It also contains UI and Launchpad objects.
All Front-end users are defined in Front-end server and they are assigned with correct roles.
To communicate with Back End system, it uses an alias for back end system and interacts with back end server using trusted RFC connection.
Fiori app calls OData service to get some data. Gateway system in front-end server knows the system alias for services and helps in getting data from back end system.
Back End server contains SAP Business suite 7 for key applications like ERP, CRM, SRM, SCM, etc.
It contains application data and used for customization of applications.
This system contains 2 OData classes −
Model Provider
Data Provider
To access Back end system, application users created on Front-end server should have an authorization S_RFCACL. This authorization should be assigned to the users in Business suite.
The connection between front-end server to back-end server must be trusted RFC connection. It means same ID is authenticated to back-end system without entering the password. As mentioned earlier, the user Id should have S_RFCACL authorization for trusted logon.
A User should have UI roles assigned in Front-end server and back-end roles in back-end server.
Go to Launchpad, right click on grey area → Inspect Element.
If you click the Network tab, you will not see anything. Now refresh the Launchpad browser link and see the call to different services.
OData service URL link, open in new tab.
You can search for My App in OData service details −
Work flow ensures that right work is brought in the right sequence at the right time to the right people. There are various SAP applications like ERP, SCM, HCM, etc. Therefore, when a document is created, changed or deleted, the application creates an event.
SAP Business workflow is used to capture these events and handle work items as per templates. Workflow engines delivers the work items to responsible person’s inbox.
Some important Business Workflow T-Codes are given below.
To add custom workflow scenarios in Fiori, follow the steps given below in front-end and back-end system.
Step 1 − Get Workflow definitions.
Step 2 − Define the scenarios for workflow.
Step 3 − Add a tile to Fiori Launchpad.
Step 4 − Decision options definition.
Step 5 − BADI implementation for decision update.
Step 6 − Display Application data.
Step 1 − Login to back-end System.
T-Code: SWI2_FREQ
Step 2 − Enter Monitoring period and work item type and click Execute.
Step 3 − It will show all existing templates in the system.
Step 4 − Now use Run T-code: /nswu3
Step 5 − Expand Maintain run time environment to check if all the nodes are green.
Step 6 − Click the start verification workflow option at the top.
Step 7 − Click the SAP Business Workflow button.
Step 8 − Click the Execute button. A new window will open.
Step 9 − Select Execute background step from the new window. Select document folder to get complete email notification of workflow.
SAP Fiori Apps can be extended by changing one or multiple content layers and it depends on the requirement of extension and Application type.
Standard App running in Fiori Launchpad
Register the new service
Configure custom app in Fiori Launchpad
All these steps are linked to each other and below table defines if there is a need to extend a particular layer.
To extend a SAP Fiori Application, the skills and tools required are given below.
SAP UI5 is a Java script based framework that is used to design multi-platform business applications. It supports various data models and views do desktop and mobile applications. SAP UI5 compiles on open Ajax and can be combined with java script libraries.
SAP UI5 was initially named phoenix that was later changed to SAP UI5 in 2011.
Web Dynpro ABAP and Floorplan manager tool can be used for creating new applications.
SAP UI5 and UI5 application development tools to change adapt or develop new applications.
SAP Dynpro is used to include Screen Personas for GUI optimization
The characteristics of SAP UI5 are as follows −
Client
Server
UI5 Browser Support
SAP UI5 supports all the key web browsers and latest versions like IE, Mozilla Firefox, Google Chrome and Safari.
SAP UI5 Architecture consists of core JavaScript framework including jQuery. It consists of Extension libraries Controls and Themes. It has Optional Server components.
Common SAP UI5 control libraries are given below.
Sap.ui.commons − This includes controls like text fields, buttons, fonts, etc.
Sap.ui.table − This includes the table controls like rows, columns, etc.
Sap.ui.ux3 − This includes properties for UX3 patterns.
Sap.m − This includes controls for mobile devices like hand phones, tablets, etc.
SAP UI5 support extensibility for application developer and allows to add JavaScript, HTML, UI5 based pages.
It allows to write new UI libraries and new controls.
Write plug-ins for UI5 core.
Create controls from existing UI5 controls.
Includes other JavaScript libraries
MVC consists of three concepts. Views can be defined using different languages like Java Scripts, HTML. Controller is used to bound the Views and Models are used with Views.
Views − It can be defined using XML with HTM, mixed or standalone
XML − (sap.ui.core.mvc.xmlview)
JavaScript − (sap.ui.core.mvc.JSView)
JSON − (sap.ui.core.mvc.JSONView)
HTML − (sap.ui.core.mvc.HTMLView)
Controller − Controllers are bound to a view. It can also be used with multiple views
Model − Data binding can be used on the views.
A comparison of different types of Views is given in the table.
Data binding is used UI5 controls to a data source to hold the application data. It allows to change the controls automatically whenever there is a change in application data.
When you use two-way data binding, application data is updated whenever the value of a bound control changes.
Data Binding supports binding of simple controls like test button, list type controls, etc.
SAP UI5 supports three types of model implementation −
JSON Model − It supports data in JavaScript Object Notation format. It supports two-way data binding.
XML Model − It supports XML data. It supports two-way data binding.
OData Model − It creates OData requests and handles responses accordingly. It only supports OData compliant data. It supports experimental two-way data binding.
Design Pattern is a new term in SAP UI5 development when we talk about SAP development or SAP Fiori system. SAP is working hard to find new design patterns that support development in SAP system using UI5 SDK.
SAP has released different types of design patterns −
This is first step in application binding and is supported by SplitApp control of SAP UI5. This design pattern supports list of content and allows lead selection and detailed view.
This design pattern displays the detail of a transaction in the detail section.
Example − You are placing an order online and you want to see a confirmation page that displays what you are buying and display detail of transaction with detailed view.
This design patter is mostly recommended for displaying charts, pictorial data and various types of graphs.
This design pattern is recommended when you are using a complex application flow and there is a need to make use of all design patterns to build a working application.