Optimize your development process with sap fiori elements
Agility and continuous delivery are two terms that have become indispensable in software development in recent years. Both terms are directly related to the efficient development of applications, which is significantly supported by the use of proven development methods and frameworks. With SAP Fiori Elements, SAP provides a suitable framework for the efficient development of SAP Fiori applications and is used more and more frequently in SAP projects.
Sap Fiori elements
Every SAP project has recurring requirements for given user interfaces, which are usually implemented with SAPUI5. These include worklists, overview pages or detail views of business objects. In the past, existing applications were being copied and adapted to the respective customer requirements in order to reduce the development effort. Today, these applications can be generated using SAP Fiori Elements and annotated OData services. The following templates are available:
Analytical List Page | Reports and KPIs are vital components of business processes in many instances and can be comprehensively presented with an Analytical List Page and the features it contains. |
Worklist | With the use of worklists POWLs can be brought to a new level. Integrated functions such as grouping or searching can even extend the familiar range of functions. |
List Report | Along with the worklists, information can be displayed in tabular form. Extensive filter options and the option of using variants to control the search make list reports, in addition to the worklists, an optimal entry point for processing business objects. |
Object Page | Object Pages enable read and write access to individual business objects. If dependent objects (such as document items) exist, you can navigate to other object pages using navigation. |
Overview Page | Depending on the context, tile-relevant information can be displayed and summarized in a user-friendly way. The maps usually serve as an overview and allow access to detailed views if required. |
The development of template-based applications significantly reduces the otherwise necessary development effort. The time gained can be used to promote interaction with the end users. In addition, the SAP Fiori Guidelines are followed by default, which is a basic requirement in most projects.
Focus on user centricity
Prototyping and the early integration of end users provide a focus on essential components of an application already in the early development phase. Based on the feedback, the benefit and acceptance of the application can be increased.
In our projects we create first prototypes with the help of SAP Fiori Elements within a few hours, which we evaluate together with customers and end users in workshops. Here, with the help of annotations or minor adjustments to the coding in the generated applications, adjustments can be made almost on-the-fly to get direct feedback. Customers welcome the flexibility and get a strengthened feeling to participate in the development.
Annotation of odata-services
OData already provides semantic information by default that can be used to control application behavior. By adding annotations, it is also possible to use semantic information to control the order, input behavior and visibility of fields. SAP Fiori Elements combines both concepts and thus offers the necessary flexibility and efficiency, which is essential in modern software development.
Annotations can be added either locally or externally via so-called Core Data Services Views (CDS-Views). The latter is useful for defining basic configurations in the back end. Local definitions (for example, within the SAPUI5 application), on the other hand, offer the advantage of decentralized storage of application-specific adjustments.
What are cds-views?
Core Data Services (CDS) are an essential component in modeling OData services that can be consumed by SAP Fiori applications .
Interface (Basic) CDS views define and encapsulate the data retrieval via SQL queries from database tables. These views are defined so that they can be reused for other models.
For each consumer (e.g. SAP Fiori application) we use one Consumption CDS-View. These views obtain the data from their own CDS views or, via associations, from several CDS views and pass them on to the SAP Fiori applications via an OData service. All annotations defined in the views are collected and made available to the applications via a central annotation service.
Freestyle apps at leogistics
Especially applications for experts are difficult to map with templates. It is our time-tested approach, to implement simple overview applications and maintenance views with as little effort as possible using standard applications and SAP Fiori Elements Apps. Within a project, this offers the opportunity to direct the focus of UI5 developers to complex expert applications. These applications often involve aggregating a large amount of data from various sources and preparing it for visual display. Nevertheless, an intuitive handling should be made possible. Thus, we often offer different views of the same data as well as complex personalization options. It is also advisable to adhere to the Fiori Design Guidelines even in complex applications. The key to the success of a good freestyle application is to involve the later users as early as possible. Architects and developers should know at every stage of development what expectations users will have when they open the application.
SAP Fiori elements or freestyle apps?
Having finished this short foray into the topic of freestyle applications, we now ask ourselves the question: When do we use Fiori Elements and when do we develop a freestyle application? Of course, this question has to be considered anew from application to application, because there is no golden rule. However, there are points you can orient yourself by:
Location | Will the application run on a desktop computer in the office or mobile on a smartphone? Once an application is used on the go, it should be as easy and intuitive to use as possible. Here, customers expect simple task lists, simple forms for data entry and actions such as confirming an order. This is where Fiori Element apps come into their own. |
Uptime | Is the application opened 1-2 times a day to quickly check something or do users work intently all day in one application? If an application is open most of the day and may even need to be fed with push data, it is probably an expert UI and should be developed as such. |
Number of objects | If an application handles many object types simultaneously (documents, resources, tasks, locations) due to dependencies, freestyle apps are more appropriate. |
It is important to keep in mind that the cost of developing a freestyle application is higher than for Fiori Elements. So the goal should be to map as much functionality as possible through these applications. So instead of adding a view with a table in the expert UI, there should always be the question if it would be more reasonable to offer a Fiori Elements application for this functionality. Only if the function is essential for the expert UI should it be implemented there. It is important to find a balance between the requirements or expectations of the future users and the project costs.
Applications for SAP Fiori apps
Due to the flexibility and variety of designs, SAP Fiori applications are increasingly being developed in the areas of SAP Transportation Management and SAP Extended Warehouse Management. In S/4 HANA, CDS views from different application areas are also available by default. Based on the standardized views, SAP Fiori Elements application can be quickly developed (Source).
More than 80% of the use cases can already be covered based on the templates available in SAP Fiori Elements. Even when using the classic SAP Warehouse Management (SAP Stock Room Management), you do not have to do without UI5 dialogs.
Are you interested in creating UI5 apps to support your logistics process? We would be happy to advise you in analysing your personal requirements!
If you have any questions about this or other topics on the blog, please contact blog@leogistics.com.
Thomas Pasberg
Hendrik Hilleckes
Stefan Jahnke
Technical Consultants SAP Logistics