{"id":1933,"date":"2022-06-02T10:39:15","date_gmt":"2022-06-02T08:39:15","guid":{"rendered":"https:\/\/new.enmeshed.de\/?p=1933"},"modified":"2025-11-24T17:00:20","modified_gmt":"2025-11-24T16:00:20","slug":"fiori-customization","status":"publish","type":"post","link":"https:\/\/www.js-soft.com\/en\/fiori-customization\/","title":{"rendered":"Fiori Customization"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the second post of\u00a0<a href=\"https:\/\/blog.js-soft.com\/blog\/fiori-introduction\" target=\"_blank\" rel=\"noreferrer noopener\">this blog series<\/a>. In this blog post I want to show you which customization options there are for Fiori apps \/ SAP standard apps. We will focus on the UI, since there are several interesting opportunities to modify the UI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are three options:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>We can create a custom-theme<\/li>\n\n\n\n<li>We can leverage the key-user tools to modify the UI during runtime<\/li>\n\n\n\n<li>We use the Web IDE or Business Application Studio to manually write a small extension via an adaptation project.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">What kind of customization can users do on their launchpad?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are several possibilites to create as well as to customize the Fiori Launchpad (FLP). With an Plug-In it is possible to add custom coding to the FLP. This might be useful to alert user of upcoming events or system downtime. With the Plugin it is also possible to add icons to the headerbar of the FLP. To do so an renderAPI has to be used within the plugin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The Plugin can be build with the Web IDE. Sure today there will be several options to do so.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The created plugin is based on SAP UI5. Hence, it consits of an Component.js and a manifest.json file as well as the lifecycle methods of an UI5 app. With the lifecycle methods and the UI5 infrastructure we can develop our own coding. E.g. create a model and attach it to a datsource to retrieve or send data to an oData service. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If your intend is to simplay brand the FLP in a certain with (e.g. with your company colors) then there is the possibility to create a custom them, which will be discussed in the next section.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Custom-theme<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The first option to modify the UI is to make use of a custom theme. To create a custom theme we use the \u2018Theme Designer\u2019. You can start the theme designer with transaction&nbsp;<code>UI5\/THEME_DESIGNER<\/code>&nbsp;(important: use chrome as a browser since it doesn\u2019t work in every browser).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The start screen of the theme designer looks like the following picture. From here you can modify or create a new theme.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"363\" src=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-1024x363.webp\" alt=\"UI Theme Designer\" class=\"wp-image-1789\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-1024x363.webp 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-300x106.webp 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-768x272.webp 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-1536x544.webp 1536w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori5-2048x726.webp 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">When you create a new theme you will be asked to enter a link, which points to the app. Here you can enter the link of your Fiori Launchpad. By doing so all apps on the launchpad will appear in the same theme once the theme is set.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"574\" src=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-1024x574.png\" alt=\"Fiori Launchpad\" class=\"wp-image-1791\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-1024x574.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-300x168.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-768x430.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-1536x861.png 1536w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori6-2048x1148.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">When the theme is created and built (via safe &amp; built in the picture above) it is available on the chosen apps. All users can access it from the launchpad settings in the user menu. Moreover, it can be set as a default theme. To set a theme as the default theme on the Fiori Launchpad there are further transactions. The first one is used to set a created theme as a default theme for the system UI2\/NWBC_CFG_CUST. The second transaction is for the administration of the themes UI5\/THEME_TOOL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key-user tools<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The key-user tools are a set of apps which provide different extensibility options. The key-user apps were developed by SAP to make extension projects easier and more cost efficient. In some parts, this works well. One example is that with the key-user tools we are able to modify the UI of an app during runtime. With the UI adaptation it is possible<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>to sort sections of an app via drag and drop<\/li>\n\n\n\n<li>to combine fields (or split combined fields)<\/li>\n\n\n\n<li>to hide fields<\/li>\n\n\n\n<li>to change labels<\/li>\n\n\n\n<li>as well as to add new fields to the UI.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">When you want to play around with them assign the role&nbsp;<code>SAP_UI_FLEX_KEY_USER<\/code>&nbsp;to your user and activate the ICF node&nbsp;<code>\/sap\/bc\/ui2\/flp<\/code>. Once this is done, you can start the key-user tools via the user menu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">P.S. we set a custom theme and hence the apps in our Fiori Launchpad look different.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"343\" src=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-1024x343.png\" alt=\"transport request \" class=\"wp-image-1793\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-1024x343.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-300x101.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-768x258.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-1536x515.png 1536w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori7-2048x687.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The changes you\u2019ve made can be added to a transport request and hence they can be made available for specific systems.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"463\" src=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-1024x463.png\" alt=\"Adding new fields \" class=\"wp-image-1795\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-1024x463.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-300x136.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-768x348.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-1536x695.png 1536w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori8-2048x927.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Adding new fields to the UI can be a bit tricky, as it depends on the fields the OData service sends to the app. If the desired field is not available in the app, the OData service has to be extended. Even though the key-user tools are a strong tool, sometimes it is not suitable and we need to manually extend the app ourselves. To do so, we will take a look at adaptation projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Adaptation project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Another way to customize the UI or the application logic of an app is via an adaptation project. This can be in the Web IDE or the Business Application Studio. With an adaptation project it is possible to see which extension points are available. Extension points are kind of predefined interfaces. With those extension points it is possible to quickly extend the existing app.<br>Another way to discover the extension points is to check the section \u2018Extensibility\u2019 in tab \u2018Implementation Information\u2019. In the section is a link to a documentation page about the different extensibility options for the specific app.<br>To extend apps this way, we have to make sure that they are developed with UI5. You can see this when you select an app in the Fiori apps library and then check the application type.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"537\" height=\"642\" src=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori9.png\" alt=\"Application Type\" class=\"wp-image-1797\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori9.png 537w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/05\/Fiori9-251x300.png 251w\" sizes=\"(max-width: 537px) 100vw, 537px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">With the presented customizing options we can quickly make useful changes as well as let Fiori apps appear in our own theme. When more changes on a Fiori app are desired an adaption project might be the correct choice.&nbsp;<a href=\"https:\/\/blog.js-soft.com\/blog\/fiori-3\" target=\"_blank\" rel=\"noreferrer noopener\">In the next post<\/a>&nbsp;we will take a look towards a more technical extensibility feature which comes handy into place when the adaption project does not provide enough extensibility features.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This post is part of a blog series.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Read also<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">part I: <a href=\"https:\/\/www.js-soft.com\/en\/fiori-introduction\/\" target=\"_blank\" rel=\"noreferrer noopener\">Fiori Introduction<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">part III: <a href=\"https:\/\/www.js-soft.com\/extensibility-scenario-with-key-user-tools\/\" target=\"_blank\" rel=\"noreferrer noopener\">Extensibility Scenario With Key User Tools<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Part IV: <a href=\"https:\/\/www.js-soft.com\/en\/sap-ui5-adaptation-projekt\/\" target=\"_blank\" rel=\"noreferrer noopener\">SAP UI5 Adaptation Project<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>With a custom-theme as well as with the key-user tools we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. With a bit more time we can start an adaption project to enhance the functionality of a Fiori app.<\/p>\n","protected":false},"author":6,"featured_media":14003,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[13],"tags":[],"class_list":["post-1933","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-fiori"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fiori Customization - j&amp;s-soft<\/title>\n<meta name=\"description\" content=\"How we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. Read more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.js-soft.com\/en\/fiori-customization\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fiori Customization - j&amp;s-soft\" \/>\n<meta property=\"og:description\" content=\"How we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. Read more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.js-soft.com\/fiori-customization\/\" \/>\n<meta property=\"og:site_name\" content=\"j&amp;s-soft\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-02T08:39:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-24T16:00:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1860\" \/>\n\t<meta property=\"og:image:height\" content=\"1084\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Thorsten M\u00fcller\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Thorsten M\u00fcller\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fiori Customization - j&amp;s-soft","description":"How we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. Read more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.js-soft.com\/en\/fiori-customization\/","og_locale":"en_US","og_type":"article","og_title":"Fiori Customization - j&amp;s-soft","og_description":"How we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. Read more.","og_url":"https:\/\/www.js-soft.com\/fiori-customization\/","og_site_name":"j&amp;s-soft","article_published_time":"2022-06-02T08:39:15+00:00","article_modified_time":"2025-11-24T16:00:20+00:00","og_image":[{"width":1860,"height":1084,"url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png","type":"image\/png"}],"author":"Thorsten M\u00fcller","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Thorsten M\u00fcller","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.js-soft.com\/fiori-customization\/#article","isPartOf":{"@id":"https:\/\/www.js-soft.com\/en\/fiori-customization\/"},"author":{"name":"Thorsten M\u00fcller","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/person\/df2ce7ed8b79e66d730f6aa7c28d10a4"},"headline":"Fiori Customization","datePublished":"2022-06-02T08:39:15+00:00","dateModified":"2025-11-24T16:00:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.js-soft.com\/en\/fiori-customization\/"},"wordCount":985,"commentCount":0,"publisher":{"@id":"https:\/\/www.js-soft.com\/en\/#organization"},"image":{"@id":"https:\/\/www.js-soft.com\/fiori-customization\/#primaryimage"},"thumbnailUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png","articleSection":["Fiori"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.js-soft.com\/fiori-customization\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.js-soft.com\/en\/fiori-customization\/","url":"https:\/\/www.js-soft.com\/fiori-customization\/","name":"Fiori Customization - j&amp;s-soft","isPartOf":{"@id":"https:\/\/www.js-soft.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.js-soft.com\/fiori-customization\/#primaryimage"},"image":{"@id":"https:\/\/www.js-soft.com\/fiori-customization\/#primaryimage"},"thumbnailUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png","datePublished":"2022-06-02T08:39:15+00:00","dateModified":"2025-11-24T16:00:20+00:00","description":"How we are able to quickly make changes that our Fiori apps or our Fiori Launchpad appear in a new brilliance. Read more.","breadcrumb":{"@id":"https:\/\/www.js-soft.com\/fiori-customization\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.js-soft.com\/fiori-customization\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/fiori-customization\/#primaryimage","url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png","contentUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/03\/Fiori-Customization.png","width":1860,"height":1084,"caption":"Fiori Apps"},{"@type":"BreadcrumbList","@id":"https:\/\/www.js-soft.com\/fiori-customization\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Start","item":"https:\/\/www.js-soft.com\/en\/"},{"@type":"ListItem","position":2,"name":"Fiori Customization"}]},{"@type":"WebSite","@id":"https:\/\/www.js-soft.com\/en\/#website","url":"https:\/\/www.js-soft.com\/en\/","name":"j&amp;s-soft","description":"IT-Unternehmensberatung f\u00fcr SAP","publisher":{"@id":"https:\/\/www.js-soft.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.js-soft.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.js-soft.com\/en\/#organization","name":"j&amp;s-soft","url":"https:\/\/www.js-soft.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/03\/Logo-js-soft.png","contentUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/03\/Logo-js-soft.png","width":2560,"height":544,"caption":"j&amp;s-soft"},"image":{"@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/person\/df2ce7ed8b79e66d730f6aa7c28d10a4","name":"Thorsten M\u00fcller","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","url":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","contentUrl":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","caption":"Thorsten M\u00fcller"},"description":"Thorsten experiences different types of front-end technologies within the SAP cosmos. Open to learn new technologies to be able to choose the correct technique for the desired outcome."}]}},"_links":{"self":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/1933","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/comments?post=1933"}],"version-history":[{"count":2,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/1933\/revisions"}],"predecessor-version":[{"id":14636,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/1933\/revisions\/14636"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/media\/14003"}],"wp:attachment":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/media?parent=1933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/categories?post=1933"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/tags?post=1933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}