{"id":29027,"date":"2024-09-11T05:00:00","date_gmt":"2024-09-11T03:00:00","guid":{"rendered":"https:\/\/sii.pl\/blog\/?p=29027"},"modified":"2026-05-07T13:27:45","modified_gmt":"2026-05-07T11:27:45","slug":"sap-fiori-authorization-troubleshooting","status":"publish","type":"post","link":"https:\/\/sii.pl\/blog\/en\/sap-fiori-authorization-troubleshooting\/","title":{"rendered":"SAP FIORI authorization troubleshooting"},"content":{"rendered":"\n<p>The SAP FIORI environment has been available on the market for many years. Yet, still, in almost every project I&#8217;ve been involved in, many users prefer using the standard SAP GUI interface \u2013 an interface whose current form dates back to the early 1990s!<\/p>\n\n\n\n<p>When I ask users and business consultants why this is the case, I often receive responses like, &#8220;Oh, it&#8217;s just what I&#8217;m used to, and with FIORI, it&#8217;s just problems \u2013 I have access, but I can&#8217;t see the applications,&#8221; &#8220;Something&#8217;s always not working, the tiles won&#8217;t open, I get browser errors \u2013 so I prefer to quickly check things in the GUI,&#8221; &#8220;In the GUI, I can see everything, but here in FIORI, I don&#8217;t see the data, it&#8217;s not finding anything.&#8221;<\/p>\n\n\n\n<p>Many users immediately associate these types of problems with something complicated, something where analyzing the cause will take a long time and may even require development work. So, they choose the shortcut of going back to the SAP GUI interface, which has already passed its prime and, in terms of visual appeal, data presentation\/analysis, and overall capabilities, actually falls short of FIORI applications in almost every way.<\/p>\n\n\n\n<p>To demystify the image of SAP FIORI as an environment where identifying the causes of problems with the visibility or functionality of FIORI tiles seems complicated and time-consuming, in this article, I will describe <strong>the causes and solutions for the most common issues<\/strong> \u2013 which, as it turns out, <strong>are mostly very simple to resolve and don&#8217;t require a lot of time.<\/strong> I will also present <strong>useful tools<\/strong> for analyzing problem causes, collecting and tracking application logs, and identifying where we can finally fix our application issues.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>SAP FIORI \u2013 application access architecture<\/strong><\/h2>\n\n\n\n<p>Simply put, SAP FIORI is an overlay for the SAP ERP system \u2013 currently most often S\/4 HANA, where it serves as the foundational solution. FIORI is built on the SAPUI5 framework based on HTML5, CSS, and JavaScript technologies. This allows FIORI applications to be developed and customized using modern web technologies.<\/p>\n\n\n\n<p>However, the data and applications are still retrieved from the SAP S\/4 HANA system, which is based on the ABAP language and with which FIORI is directly integrated. In the current approach, the SAP FIORI Embedded configuration is used, meaning that both the frontend and backend operate within a single SAP system. Below is a diagram of the SAP FIORI application access architecture:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-scaled.jpg\"><img decoding=\"async\" width=\"1024\" height=\"724\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-1024x724.jpg\" alt=\"SAP FIORI application access architecture (diagram inspired by the webinar SAP Fiori Security \u2013 authorization debugging)\" class=\"wp-image-29029\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-1024x724.jpg 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-300x212.jpg 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-768x543.jpg 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-1536x1086.jpg 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-01-EN-Architektura-dostepu-do-aplikacji-SAP-FIORI-2048x1448.jpg 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 1 SAP FIORI application access architecture (diagram inspired by the webinar <a href=\"https:\/\/www.youtube.com\/live\/A5l9U6WNyws?si=hiQTt-Vrt8G4Zhzr\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Fiori Security \u2013 authorization debugging<\/a>)<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Layers of integration<\/strong><\/h3>\n\n\n\n<p>As shown in the graphic above, there are three main layers of this integration:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Backend Server (BES)<\/strong> \u2013 this is the business logic layer we can assume to be our S\/4 HANA system. In this layer, business roles are assigned to users. These roles contain information about FIORI applications, such as the catalogs they are located in, OData services (IWSV), ABAP transactions they use, Web Dynpro applications, etc.<\/li>\n\n\n\n<li><strong>SAP Frontend Server (FES<\/strong>) \u2013 to put it simply, this is what happens in the background of the FIORI environment itself. In this layer, requests for access to the Backend system are sent through the SAP Gateway. This layer also contains access roles with information such as catalogs, groups, and OData services (IWSG).<\/li>\n\n\n\n<li><strong>SAP FIORI Launchpad (FLP)<\/strong> is the final layer \u2013 visual, directly accessible, and visible to the user. This is where the user launches and views FIORI applications.<\/li>\n<\/ul>\n\n\n\n<p>At first glance, it&#8217;s easy to guess that problems can arise at any of these layers.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>The most common problems<\/strong><\/h3>\n\n\n\n<p>Let&#8217;s look at the most common issues and their causes.<\/p>\n\n\n\n<p><strong>Attention!<\/strong> Before we continue \ud83d\ude0a The article describes situations where a user theoretically should already have access to specific SAP FIORI applications yet still encounters issues with their visibility or functionality. I also assume that the reader is familiar with transactions such as SUIM, SU01, and PFCG to be able to find the role with the missing authorization object (resulting, for example, from SU53 logs) and assign it to the user, modify the selected existing role, or create a new role in the SAP system.<\/p>\n\n\n\n<p>To remind you, there are two ways to verify if a user already has the appropriate role that theoretically should give them access to a specific FIORI application:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For standard SAP FIORI applications, open the publicly accessible <a href=\"https:\/\/fioriappslibrary.hana.ondemand.com\/sap\/fix\/externalViewer\/#\/home\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP FIORI Apps Library<\/a>, select the category &#8220;All apps,&#8221; choose the appropriate SAP system version, and in the &#8220;Configuration&#8221; tab, check the &#8220;Business Role(s)&#8221; table for the list of roles that grant access to the selected application. Then, in the SU01 or PFCG transaction, verify if the user already has this role assigned.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI.png\"><img decoding=\"async\" width=\"1024\" height=\"482\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI-1024x482.png\" alt=\"SAP Fiori apps reference library \u2013 list of roles with access to FIORI applications\" class=\"wp-image-28962\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI-1024x482.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI-300x141.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI-768x362.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI-1536x723.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-02-SAP-Fiori-Apps-Reference-Library-lista-rol-z-dostepem-do-aplikacji-FIORI.png 1911w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 2 SAP Fiori apps reference library \u2013 list of roles with access to FIORI applications<\/figcaption><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For both standard and custom SAP FIORI applications, open the transaction <strong>\/n\/UI2\/FLPCM_CUST<\/strong> in SAP GUI, go to the &#8220;Tiles\/Target Mappings&#8221; tab, and enter the exact name of your FIORI tile (case sensitivity and spaces matter!). Select it and choose the <strong>&#8220;Show usage in Roles&#8221;<\/strong> option. Then, in the SU01 or PFCG transaction, verify if the user already has this role assigned.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI.png\"><img decoding=\"async\" width=\"1024\" height=\"523\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI-1024x523.png\" alt=\"Launchpad content manager \u2013 list of roles with access to FIORI applications\" class=\"wp-image-28964\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI-1024x523.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI-300x153.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI-768x392.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI-1536x784.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-03-Launchpad-Content-Manager-lista-rol-z-dostepem-do-aplikacji-FIORI.png 1788w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 3 Launchpad content manager \u2013 list of roles with access to FIORI applications<\/figcaption><\/figure>\n\n\n\n<p>It&#8217;s also worth checking whether the FIORI application you searched for is in the FIORI catalog in the form of (Tile+TM) and whether this catalog is assigned to the FIORI role that the user has or wants to assign to them. To verify this, follow the same steps as in the previous points, but at the end, choose the &#8220;<strong>Show usage in Roles<\/strong>&#8221; option, check the &#8220;<strong>Reference Details<\/strong>&#8221; column, and in the PFCG transaction, ensure that the catalog is assigned to the role that the user has or that you want to assign to them.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM.png\"><img decoding=\"async\" width=\"1024\" height=\"523\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM-1024x523.png\" alt=\"Launchpad content manager \u2013 list of catalogs containing Tile + TM\" class=\"wp-image-28966\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM-1024x523.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM-300x153.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM-768x392.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM-1536x785.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-04-Launchpad-Content-Manager-lista-katalogow-zawierajacych-Tile-TM.png 1791w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 4 Launchpad content manager \u2013 list of catalogs containing Tile + TM<\/figcaption><\/figure>\n\n\n\n<p>If a given application&#8217;s information (Tile + TM) is not available in any catalog, then the missing Tile or TM element must be added to the appropriate FIORI catalog. However, this is a topic for a completely separate article. <\/p>\n\n\n\n<p>For now, I&#8217;ve left a link to the SAP Documentation that describes similar cases: <a href=\"Fig.%204%20Launchpad%20content%20manager%20\u2013%20list%20of%20catalogs%20containing%20Tile%20+%20TM\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Fiori Launchpad Content Manager<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Errors when opening a FIORI tile<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Scenario 1.<\/strong><\/h3>\n\n\n\n<p>In the SAP Launchpad, we found the FIORI application we are interested in. We want to open it, but it takes a very long time, and eventually, instead of the application window, we get a 403\/404 browser error \u2013 an example of such an error is shown below:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci.png\"><img decoding=\"async\" width=\"1024\" height=\"477\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci-1024x477.png\" alt=\"Error 403 \u2013 application fails to load \u2013 no access to content\" class=\"wp-image-28968\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci-1024x477.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci-300x140.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci-768x358.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci-1536x715.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-05-Blad-403-aplikacja-nie-wczytuje-sie-brak-dostepu-do-zawartosci.png 1827w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 5 Error 403 \u2013 application fails to load \u2013 no access to content<\/figcaption><\/figure>\n\n\n\n<p>This indicates that an OData service (a service that communicates between the front and backend) is not functioning correctly, is inactive, or has not been implemented in the system. To analyze and fix this, follow these steps:<\/p>\n\n\n\n<p>Step 1. Run the transaction <strong>\/n\/UI2\/FLPCM_CUST<\/strong> <\/p>\n\n\n\n<p>Step 2. In the &#8220;<strong>Tiles\/Target Mappings<\/strong>&#8221; tab, find the application in question, select it, and choose the option <strong>Services -&gt; Check and Show Services<\/strong>. Check the <strong>oData V2 Services<\/strong> and <strong>oData V4 Services<\/strong> tabs. Below are screenshots from the transaction:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services.png\"><img decoding=\"async\" width=\"1024\" height=\"522\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services-1024x522.png\" alt=\"Launchpad Content Manager \u2013 Check and Show Services\" class=\"wp-image-28970\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services-1024x522.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services-300x153.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services-768x392.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services-1536x783.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-06-Launchpad-Content-Manager-Check-and-Show-Services.png 1794w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 6 Launchpad Content Manager \u2013 Check and Show Services<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji.png\"><img decoding=\"async\" width=\"1024\" height=\"522\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji-1024x522.png\" alt=\"Launchpad Content Manager \u2013 list of application services\" class=\"wp-image-28972\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji-1024x522.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji-300x153.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji-768x392.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji-1536x783.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-07-Launchpad-Content-Manager-lista-serwisow-aplikacji.png 1790w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 7 Launchpad Content Manager \u2013 list of application services<\/figcaption><\/figure>\n\n\n\n<p>If any of the OData services in these tabs have a red status (inactive), you should:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>go to the transaction <strong>\/n\/IWFND\/MAINT_SERVICE<\/strong>, find the inactive OData service in the <strong>External Service Name<\/strong> column, select it, and activate it in the ICF Services window at the bottom left by choosing <strong>ICF Node -&gt; Activate<\/strong>:<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData.png\"><img decoding=\"async\" width=\"1024\" height=\"527\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData-1024x527.png\" alt=\"Activate and Maintain Services - activating the OData service\" class=\"wp-image-28974\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData-1024x527.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData-300x155.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData-768x396.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData-1536x791.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-08-Activate-and-Maintain-Services-aktywacja-serwisu-oData.png 1796w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 8 Activate and Maintain Services &#8211; activating the OData service<\/figcaption><\/figure>\n\n\n\n<p>If the service status does not change and you receive a system message stating that the service cannot be activated, select <strong>ICF Node \u2013&gt; Configure SICF<\/strong>. You will be redirected to the <strong>SICF<\/strong> transaction,directly to the tree of objects containing the service. If it is deactivated (grayed out), right-click on it and choose <strong>Activate Service<\/strong>, then confirm by selecting the <strong>second option, Yes,<\/strong> in the next window, as shown in the screenshots below:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF.png\"><img decoding=\"async\" width=\"1024\" height=\"526\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF-1024x526.png\" alt=\"Activate and maintain services \u2013 navigating to SICF configuration\" class=\"wp-image-28976\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF-1024x526.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF-300x154.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF-768x395.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF-1536x789.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-09-Activate-and-Maintain-Services-przejscie-do-konfiguracji-SICF.png 1792w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 9 Activate and maintain services \u2013 navigating to SICF configuration<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF.png\"><img decoding=\"async\" width=\"1024\" height=\"473\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF-1024x473.png\" alt=\"Define Services \u2013 aktywacja serwisu ICF\" class=\"wp-image-28978\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF-1024x473.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF-300x138.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF-768x354.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF-1536x709.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-10-Define-Services-aktywacja-serwisu-ICF.png 1894w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 10 Define services \u2013 activating the ICF service<\/figcaption><\/figure>\n\n\n\n<p>It will now be active when you return to your service in the \/n\/IWFND\/MAINT_SERVICE transaction. Its status will also change to &#8220;green&#8221; in the OData tabs in the <strong>\/n\/UI2\/FLPCM_CUST<\/strong> transaction mentioned at the beginning of Step 2.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>go to the <strong>\/n\/IWFND\/MAINT_SERVICE<\/strong> transaction and search for the inactive OData service in the <strong>External Service Name<\/strong> column. It has not been implemented in your system if you cannot find it. How can you implement it? Refer to the following articles:\n<ul class=\"wp-block-list\">\n<li>for oData V2: <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/me.sap.com\/notes\/0002525224\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Note 2525224 \u2013 Missing OData Service when Attempting to Add Service in \/IWFND\/MAINT_SERVICES<\/a> and <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/support.sana-commerce.com\/Content\/Installation\/Install-Sana-in-SAP-ERP\/Add-Sana-Fiori-Apps\/Activate-OData-Services-for-Sana-Apps.htm?TocPath=Installation%7CInstall%20Sana%20in%20SAP%20ECC%20or%20S%2F4HANA%7C3.%20Add%20Sana%20Apps%20to%20the%20SAP%20Fiori%20Launchpad%7CActivate%20Sana%20SAP%20Fiori%20Apps%7C_____1\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Activate OData Services for Sana SAP Fiori Apps<\/a><\/li>\n\n\n\n<li>for oData V4: <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/community.sap.com\/t5\/technology-blogs-by-members\/publish-activate-an-odata-v4-service-group-in-sap\/ba-p\/13554191\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Publish\/Activate an oData V4 Service Group in SAP<\/a> and <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/community.sap.com\/t5\/technology-blogs-by-sap\/odata-v4-service-catalog\/ba-p\/13477068\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >OData V4 Service Catalog<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>Once the services are implemented and activated, return to your service in the <strong>\/n\/IWFND\/MAINT_SERVICE<\/strong> transaction, where it will now be active. Its status will also change to &#8220;green&#8221; in the OData tabs in the <strong>\/n\/UI2\/FLPCM_CUST<\/strong> transaction mentioned at the beginning of Step 2.<\/p>\n\n\n\n<p><strong>Step 3<\/strong>. Test the application&#8217;s functionality in the SAP FIORI Launchpad, preferably after refreshing the page, clearing the browser&#8217;s cookies\/cache, or logging back into SAP FIORI.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Scenario 2.<\/strong><\/h3>\n\n\n\n<p>In the SAP Launchpad, we found the FIORI application we are interested in. We want to open it, but it takes a very long time, and eventually, instead of the application window, we receive a 403\/500 browser error \u2013 request failed, for example:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5.png\"><img decoding=\"async\" width=\"1024\" height=\"493\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5-1024x493.png\" alt=\"Error \u2013 issue with loading the UI5 component\" class=\"wp-image-28980\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5-1024x493.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5-300x145.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5-768x370.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5-1536x740.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-11-Blad-problem-z-zaladowaniem-komponentu-UI5.png 1853w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 11 Error \u2013 issue with loading the UI5 component<\/figcaption><\/figure>\n\n\n\n<p>You should proceed in the same way as in Scenario 1, with the difference that in Step 2, you need to check the <strong>ICF Services<\/strong> tab. If any ICF service is inactive, you should select it and choose the <strong>Define Services<\/strong> option, and then activate the ICF service in the same way as in Scenario 1 \u2013 Step 2, when the system redirected us to the SICF transaction:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF.png\"><img decoding=\"async\" width=\"1024\" height=\"526\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF-1024x526.png\" alt=\"Launchpad content manager \u2013 inactive ICF service\" class=\"wp-image-28982\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF-1024x526.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF-300x154.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF-768x394.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF-1536x789.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-12-Launchpad-Content-Manager-nieaktywny-serwis-ICF.png 1792w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 12 Launchpad Content Manager \u2013 inactive ICF service<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF.png\"><img decoding=\"async\" width=\"1024\" height=\"502\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF-1024x502.png\" alt=\"Define services \u2013 activating the ICF service\" class=\"wp-image-28984\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF-1024x502.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF-300x147.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF-768x377.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF-1536x753.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-13-Define-Services-aktywacja-serwisu-ICF.png 1896w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 13 Define services \u2013 activating the ICF service<\/figcaption><\/figure>\n\n\n\n<p>The 403\/500 error \u2013 Request Failed or Component Failed may also have a direct authorization-related cause in the SAP S\/4 HANA system. The user may not have the necessary authorizations for the <strong>S_RFCACL<\/strong> authorization object, which we can diagnose using the SU53, STAUTHTRACE, or App Support (in FIORI) transactions. I will mention these tools further in the article.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Scenario 3.<\/strong><\/h3>\n\n\n\n<p>The steps taken in Scenarios 1 and 2 did not help, and additionally, we are receiving the following message:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-14-Blad-problem-z-zaladowniem-zawartosci-komponentu-UI5.png\"><img decoding=\"async\" width=\"741\" height=\"429\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-14-Blad-problem-z-zaladowniem-zawartosci-komponentu-UI5.png\" alt=\"Error \u2013 problem loading content \u2013 UI5 component\" class=\"wp-image-28986\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-14-Blad-problem-z-zaladowniem-zawartosci-komponentu-UI5.png 741w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-14-Blad-problem-z-zaladowniem-zawartosci-komponentu-UI5-300x174.png 300w\" sizes=\"(max-width: 741px) 100vw, 741px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 14 Error \u2013 problem loading content \u2013 UI5 component<\/figcaption><\/figure>\n\n\n\n<p>This means that the application still cannot locate a particular oData service and, consequently, the ICF service as well. To verify this, you should perform Step 1 and Step 2 from Scenario 1 and check if the number of oData V2 and V4 services matches the documentation for this application in the <a href=\"https:\/\/fioriappslibrary.hana.ondemand.com\/sap\/fix\/externalViewer\/#\/home\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >FIORI Library.<\/a> Any service that is missing should be added similarly to Scenario 1, Step 2(b).<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData.png\"><img decoding=\"async\" width=\"1024\" height=\"486\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData-1024x486.png\" alt=\"SAP Fiori Apps Reference \u2013 information about ICF and oData services used by the application\" class=\"wp-image-28988\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData-1024x486.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData-300x142.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData-768x365.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData-1536x729.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-15-SAP-Fiori-Apps-Reference-informacje-o-uzywanych-przez-aplikacje-serwisach-ICF-i-oData.png 1910w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 15 SAP Fiori Apps Reference \u2013 information about ICF and oData services used by the application<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/en\/job-ads\/?tt=SAP_3\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"737\" height=\"170\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-EN-3.jpg\" alt=\"job offer\" class=\"wp-image-29811\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-EN-3.jpg 737w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-EN-3-300x69.jpg 300w\" sizes=\"(max-width: 737px) 100vw, 737px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Authorization errors in CDS views<\/strong><\/h2>\n\n\n\n<p>CDS (Core Data Services) views in SAP allow the creation of advanced, efficient, and complex data models and application logic at the database level. These views can be accessed via SAP FIORI. Still, access to the mentioned data models (Virtual Data Model) in CDS views is always controlled through a combination of the following authorizations:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Classic authorization object checks \u2013 through authorization checks in ABAP code, such as objects (S_TCODE, S_START, S_SERVICE, SDDLVIEW, etc.) \u2013 occur when the application is started.<\/li>\n\n\n\n<li>User authorization verification at the CDS view data source level happens dynamically while using the view as it fetches additional data. Permissions in the CDS view code are continually compared to the user authorizations in PFCG.<\/li>\n<\/ul>\n\n\n\n<p>Below is a diagram comparing the classic approach to authorization verification for ABAP-based applications with the DCL approach for CDS views:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-scaled.jpg\"><img decoding=\"async\" width=\"1024\" height=\"724\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-1024x724.jpg\" alt=\"omparision of standard ABAP approach with DCL approach for CDS views (diagram inspired from webinar SAP Fiori Security \u2013 Authorization Debugging)\" class=\"wp-image-29033\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-1024x724.jpg 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-300x212.jpg 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-768x543.jpg 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-1536x1086.jpg 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-16-EN-Porownanie-standardowego-podejscia-ABAP-z-podejsciem-DCL-dla-widokow-CDS-1-2048x1448.jpg 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 16 Comparision of standard ABAP approach with DCL approach for CDS views (diagram inspired from webinar <a href=\"https:\/\/www.youtube.com\/live\/A5l9U6WNyws?si=hiQTt-Vrt8G4Zhzr\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Fiori Security \u2013 Authorization Debugging<\/a>)<\/figcaption><\/figure>\n\n\n\n<p><strong>The DCL (Data Control Language)<\/strong> approach defines what data a user can view, depending on their permissions. It is mainly used to restrict access to data at the record level (row-level security) and at the column level (column-level security) in CDS data models.<\/p>\n\n\n\n<p>Once defined, authorization rules are automatically applied to all queries using the given CDS view, ensuring consistency and reducing the risk of errors. This allows for dynamic and context-sensitive data access adjustments based on user attributes, which is harder to achieve with the classic approach.<\/p>\n\n\n\n<p>Due to their more flexible and efficient operation, CDS views and the DCL approach are also increasingly used in standard SAP transactions. An example is the Display Material (MM03) application.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>User tracking<\/strong> and simulation of data access in CDS<\/h3>\n\n\n\n<p>In transaction <strong>STAUTHTRACE<\/strong>, I initiated user tracking to verify which authorizations I am attempting to use. After starting the Display Material (MM03) application, I received the following logs:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS.png\"><img decoding=\"async\" width=\"1024\" height=\"522\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS-1024x522.png\" alt=\"System Trace for authorization checks \u2013 logs with results of individual authorizations \u2013 including CDS views\" class=\"wp-image-28993\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS-1024x522.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS-300x153.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS-768x391.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS-1536x783.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-17-System-Trace-for-Authorization-Checks-logi-z-rezultatami-poszczegolnych-autoryzacji-rowniez-do-widokow-CDS.png 1797w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 17 System Trace for authorization checks \u2013 logs with results of individual authorizations \u2013 including CDS views<\/figcaption><\/figure>\n\n\n\n<p>As seen in the CDS Entity column, there is information that some of the data displayed to me in the Display Material (MM03) application comes from a CDS view, and access to this data is authorized at the CDS view level. An important note is that such information will not be available in SU53!<\/p>\n\n\n\n<p>Therefore, for more detailed verification of logs\/authorization errors, it is also advisable to use transaction STAUTHTRACE. Furthermore, from the logs, I can directly navigate to the CDS Access Control application, allowing me to verify what is being checked in the CDS view to display the appropriate data. Below is an example of the previously invoked view:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje.png\"><img decoding=\"async\" width=\"1024\" height=\"666\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje-1024x666.png\" alt=\"CDS access control \u2013 database script for CDS view with authorization query\" class=\"wp-image-28995\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje-1024x666.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje-300x195.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje-768x500.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-18-CDS-Access-Control-skrypt-bazodanowy-dla-widoku-CDS-z-zapytaniem-o-autoryzacje.png 1231w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 18 CDS access control \u2013 database script for CDS view with authorization query<\/figcaption><\/figure>\n\n\n\n<p>As shown, there is a fragment of code that, at the CDS view level, compares the values of authorization objects provided here with the authorization objects held by the user currently viewing the CDS view and decides whether the specific data set can be displayed.<\/p>\n\n\n\n<p>In the example above, this data set pertains to access to product groups (object M_MATE_MAT, field: BEGRU). The CDS view checks what access the user has to the object and displays data only for those product groups (BEGRU) where the user has the activity values 03 (display) and F4 (display in value help).<\/p>\n\n\n\n<p>Therefore, unlike the classic approach, the system does not check every activity field value (ACTVT) value for the data product groups from the BEGRU field in the ABAP script. Instead, it &#8220;fetches&#8221; the user&#8217;s accesses (activities) to the values in the BEGRU field and, at the database script level, checks if these values are among those specified in the CDS view query. If they are, the data is displayed. A beneficial tool for verifying what data a specific user can access in a view is the <strong>CDS Access Control Runtime Simulator (SACM):<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia.png\"><img decoding=\"async\" width=\"1024\" height=\"290\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia-1024x290.png\" alt=\"Access Control Management \u2013 tool selection screen\" class=\"wp-image-28997\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia-1024x290.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia-300x85.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia-768x218.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-19-Access-Control-Management-ekran-wyboru-narzedzia.png 1139w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 19 Access Control Management \u2013 tool selection screen<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-20-CDS-Access-Control-Runtime-Simulator-ekran-wyboru-symulacji-dostepow-CDS-dla-wybranego-uzytkownika.png\"><img decoding=\"async\" width=\"840\" height=\"537\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-20-CDS-Access-Control-Runtime-Simulator-ekran-wyboru-symulacji-dostepow-CDS-dla-wybranego-uzytkownika.png\" alt=\"CDS Access Control Runtime Simulator \u2013 Access Simulation Selection screen for a selected user\" class=\"wp-image-28999\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-20-CDS-Access-Control-Runtime-Simulator-ekran-wyboru-symulacji-dostepow-CDS-dla-wybranego-uzytkownika.png 840w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-20-CDS-Access-Control-Runtime-Simulator-ekran-wyboru-symulacji-dostepow-CDS-dla-wybranego-uzytkownika-300x192.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-20-CDS-Access-Control-Runtime-Simulator-ekran-wyboru-symulacji-dostepow-CDS-dla-wybranego-uzytkownika-768x491.png 768w\" sizes=\"(max-width: 840px) 100vw, 840px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 20 CDS Access Control Runtime Simulator \u2013 Access Simulation Selection screen for a selected user<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem.png\"><img decoding=\"async\" width=\"1024\" height=\"398\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem-1024x398.png\" alt=\"ACM Runtime Simulator \u2013 results of Access Simulation to CDS view for a user with full access\" class=\"wp-image-29001\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem-1024x398.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem-300x117.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem-768x299.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem-1536x598.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-21-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-pelnym-dostepem.png 1704w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 21 ACM Runtime Simulator \u2013 results of Access Simulation to CDS view for a user with full access<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem.png\"><img decoding=\"async\" width=\"1024\" height=\"398\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem-1024x398.png\" alt=\"ACM Runtime Simulator \u2013 results of Access Simulation to CDS view for a user with limited access\" class=\"wp-image-29003\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem-1024x398.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem-300x117.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem-768x299.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem-1536x597.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-22-ACM-Runtime-Simulator-rezultaty-symulacji-dostepow-do-widoku-CDS-uzytkownika-z-ograniczonym-dostepem.png 1700w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 22 ACM Runtime Simulator \u2013 results of Access Simulation to CDS view for a user with limited access<\/figcaption><\/figure>\n\n\n\n<p>In Fig. 20, it is clear that my user can access all data in this view. However, in Fig. 21, a user with different roles can only access one product group marked as XYZ. Only data for this product group will be displayed to them in the application using this CDS view.<\/p>\n\n\n\n<p>This is very useful when a user cannot see some data and receives no authorization error, nor does it appear in SU53. In such cases, combining STAUTHTRACE and SACM tools significantly eases the problem analysis.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Error analysis tools + most commonly detected errors<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>SU53<\/strong><\/h3>\n\n\n\n<p>This is a tool that hardly needs an introduction; it is an absolute classic for analyzing authorization issues in both ABAP and FIORI systems \ud83d\ude0a<strong><\/strong><\/p>\n\n\n\n<p>In the context of FIORI application functionality, the most common problem is the lack of user authorization for the relevant services (e.g., ODATA) defined in the authorization object S_SERVICE. This will cause issues with opening applications or even result in a lack of access to specific data or options.<\/p>\n\n\n\n<p>Below is an example of such logs in transaction SU53:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE.png\"><img decoding=\"async\" width=\"1024\" height=\"371\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE-1024x371.png\" alt=\"Example errors related to lack of access to oData Services in authorization Object S_SERVICE \" class=\"wp-image-29006\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE-1024x371.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE-300x109.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE-768x278.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE-1536x556.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-23-Przykladowe-bledy-zwiazane-z-brakiem-dostepu-do-serwisow-oData-w-obiekcie-autoryzacyjnym-S_SERVICE.png 1789w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 23 Example errors related to lack of access to oData Services in authorization Object S_SERVICE<\/figcaption><\/figure>\n\n\n\n<p>To resolve this, you need to either find a role that already contains the object with that value (e.g., using transaction SUIM) or add this value to the S_SERVICE object in an existing role using transaction PFCG:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli.png\"><img decoding=\"async\" width=\"1024\" height=\"690\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli-1024x690.png\" alt=\"Transaction PFCG \u2013 adding oData Services as values to the authorization Object S_SERVICE in a role\" class=\"wp-image-29008\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli-1024x690.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli-300x202.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli-768x517.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-24-Transakcja-PFCG-dodawnie-serwisow-oData-jako-wartosci-do-obiektu-autoryzacyjnego-S_SERVICE-w-roli.png 1122w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 24 Transaction PFCG \u2013 adding oData Services as values to the authorization Object S_SERVICE in a role<\/figcaption><\/figure>\n\n\n\n<p>A limitation of SU53 is that it does not provide logs for all types of authorization errors; for example, it does not include logs for errors related to CDS view authorizations defined at the CDS view code level. <\/p>\n\n\n\n<p><strong>TIP!<\/strong> As soon as you know that a FIORI application has been affected and check the logs in SU53, it is advisable to save them immediately, as they are only visible for a limited time. This way, you avoid asking the user to &#8220;regenerate&#8221; the error \ud83d\ude0a Alternatively, you can ask the user to download and send us the logs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>App Support<\/strong><\/h3>\n\n\n\n<p>Simplified, this is the equivalent of SU53 but available directly from the SAP FIORI Launchpad. However, this application is not available by default; it must be activated, and the FIORI catalog must be added to the roles we select in SAP. The application appears as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support.png\"><img decoding=\"async\" width=\"1024\" height=\"518\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support-1024x518.png\" alt=\"Main screen of the App Support Application \" class=\"wp-image-29010\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support-1024x518.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support-300x152.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support-768x389.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-25-Ekran-glowny-aplikacji-App-Support.png 1288w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 25 Main screen of the App Support Application (Source: <a href=\"https:\/\/community.sap.com\/t5\/technology-blogs-by-sap\/sap-fiori-for-sap-s-4hana-10-health-checks-for-the-sap-fiori-launchpad\/ba-p\/13521953\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" ><strong>SAP Fiori for SAP S\/4HANA \u2013 10 health checks for the SAP Fiori launchpad<\/strong><\/a>]<\/figcaption><\/figure>\n\n\n\n<p>SAP documentation on how to activate the application for users: <a href=\"https:\/\/help.sap.com\/docs\/ABAP_PLATFORM_NEW\/a7b390faab1140c087b8926571e942b7\/04bc7b47932f4e689f7911901087a8f2.html\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Setting Up App Support<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>STAUTHTRACE<\/strong><\/h3>\n\n\n\n<p>This tool allows you to track which authorization objects are checked during specific user operations. This helps identify which authorizations are required and which are causing problems. You can select the range of users for whom you want to enable tracing and specify the operations you want to track:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-26-System-Trace-for-Authorization-Checks-STAUTHTRACE.png\"><img decoding=\"async\" width=\"656\" height=\"536\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-26-System-Trace-for-Authorization-Checks-STAUTHTRACE.png\" alt=\"System Trace for Authorization Checks \u2013 STAUTHTRACE\" class=\"wp-image-29012\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-26-System-Trace-for-Authorization-Checks-STAUTHTRACE.png 656w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-26-System-Trace-for-Authorization-Checks-STAUTHTRACE-300x245.png 300w\" sizes=\"(max-width: 656px) 100vw, 656px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 26 System Trace for Authorization Checks \u2013 STAUTHTRACE<\/figcaption><\/figure>\n\n\n\n<p>This tool will also indicate errors related to permissions for CDS views.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>\/n\/IWFND\/ERROR_LOG<\/strong><\/h3>\n\n\n\n<p>This diagnostic tool allows verification of error logs during the processing of oData service requests \u2013 errors related to communication between SAP Gateway and the backend system, including data processing issues:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend.png\"><img decoding=\"async\" width=\"1024\" height=\"497\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend-1024x497.png\" alt=\"SAP Gateway Error Log \u2013 frontend\" class=\"wp-image-29014\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend-1024x497.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend-300x146.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend-768x373.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend-1536x746.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-27-SAP-Gateway-Error-Log-Frontend.png 1889w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 27 SAP Gateway Error Log \u2013 Frontend<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>\/n\/IWBEP\/ERROR_LOG<\/strong><\/h3>\n\n\n\n<p>Similar to the previous tool, it allows verification of error logs during oData request processing, but on the backend side. It also helps analyze errors related to the RFC authorization object &#8211; S_RFCACL mentioned earlier:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log.png\"><img decoding=\"async\" width=\"1024\" height=\"516\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log-1024x516.png\" alt=\"SAP Backend Error Log\" class=\"wp-image-29016\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log-1024x516.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log-300x151.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log-768x387.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log-1536x774.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-28-SAP-Backend-Error-Log.png 1795w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 28 SAP Backend Error Log<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>ST22<\/strong><\/h3>\n\n\n\n<p>A transaction used for analyzing ABAP errors. It is included here because sometimes what initially appears to be an authorization error may not be one \ud83d\ude0a For example, if a user receives an unclear error message that suggests a lack of access. There are no error logs in transaction SU53; it is worth checking logs in transaction ST22 to determine if it is an ABAP\/developer error:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-29-ABAP-Runtime-Errors-ST22.png\"><img decoding=\"async\" width=\"840\" height=\"687\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-29-ABAP-Runtime-Errors-ST22.png\" alt=\"ABAP Runtime Errors \u2013 ST22\" class=\"wp-image-29018\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-29-ABAP-Runtime-Errors-ST22.png 840w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-29-ABAP-Runtime-Errors-ST22-300x245.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-29-ABAP-Runtime-Errors-ST22-768x628.png 768w\" sizes=\"(max-width: 840px) 100vw, 840px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 29 ABAP Runtime Errors \u2013 ST22<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Browser Developer Tools (Chrome, Firefox, Edge, Opera, etc.)<\/strong><\/h3>\n\n\n\n<p>Many things in SAP FIORI occur at the browser level, so using built-in developer tools and their consoles can help pinpoint the source of potential problems \u2013 verify what request was made and which service\/function caused the error. Below is a screenshot of an example error and the information that can be read from the developer tool:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData.png\"><img decoding=\"async\" width=\"1024\" height=\"400\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData-1024x400.png\" alt=\"DevTools in Google Chrome \u2013 Highlighted Segment Indicating a Problem with a Specific oData Service\" class=\"wp-image-29020\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData-1024x400.png 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData-300x117.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData-768x300.png 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData-1536x600.png 1536w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-30-DevTools-w-przegladarce-Google-Chrome-zaznaczony-fragment-wskazuje-na-problem-z-konkretnym-serwisem-oData.png 1877w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 30 DevTools in Google Chrome \u2013 Highlighted Segment Indicating a Problem with a Specific oData Service<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Additional useful tools<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\/UI5\/APP_INDEX_CALCULATE<\/strong> \u2013 this transaction generates or recreates the SAPUI5 application index, which is crucial after deploying new Fiori applications, system updates, or changes in application configuration. Using this transaction is often recommended when facing issues with displaying Fiori applications, such as missing applications or availability problems\u2014especially if changes have been made.<\/li>\n\n\n\n<li><strong>\/n\/IWFND\/CACHE_CLEANUP<\/strong> \u2013 in case of issues with oData services or Fiori applications, such as malfunctioning applications or missing or outdated data, this transaction can help restore proper functioning by clearing the cache, forcing the system to reload current data from the backend.<\/li>\n\n\n\n<li><strong>SM20 (Security Audit Log)<\/strong> \u2013 used to review user logs, such as their transactions.<\/li>\n\n\n\n<li>SLG1 \u2013 Used to review system logs triggered by the user, such as in a specific transaction or program.<\/li>\n\n\n\n<li><strong>HTTP Trace Tools \u2013 various tools for monitoring HTTP or oData requests in the context of SAP FIORI applications. You can review detailed information about each request, such as the <\/strong>method (GET, POST, PUT, DELETE), headers, body, response status, response time, and more.<\/li>\n<\/ul>\n\n\n<div class=\"nsw-o-blogersii-banner\">\n            <picture>\n            <source srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2026\/04\/Blog-SAP-Desktop_.jpg\" media=\"(min-width: 992px)\" >\n            <source srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2026\/04\/Blog-SAP-Mob_.jpg\" media=\"(min-width: 300px)\" >            <img decoding=\"async\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2026\/04\/Blog-SAP-Desktop_.jpg\" alt=\"\"  class=\"\"  >\n        <\/picture>\n        <div class=\"cnt\">\n                    <div class=\"nsw-m-title-block -h3 -invert  -has-title-margin-bottom-0 -has-title-font-weight-bold\">\n                                <h2 class=\"nsw-m-title-block__title\">Sii x SAP<\/h2>\n                <\/div>\n                            <p class=\"has-nsw-p-4-font-size has-invert-color\">\n                As an SAP Silver Partner, we have many years of experience in implementing ERP solutions in companies of various scales and process complexities.\n            <\/p>\n                            <a  href=\"https:\/\/sii.pl\/en\/what-we-offer\/enterprise-platforms\/sap\/\" class=\"nsw-a-button -ghost -banner-button\"   >\n        <span>SAP offering<\/span>\n    <\/a>\n            <\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Other errors<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Incorrectly assigned or missing system alias during the creation\/configuration of a new FIORI application, specifically for the services supporting it. This results in the application not being visible in the FIORI environment. For more information and examples, refer to: <a href=\"https:\/\/community.sap.com\/t5\/technology-q-a\/no-system-alias-found-for-service-and-user\/qaq-p\/12054789\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Community &#8211; <strong>No System Alias found for Service &#8221; and user,&#8221;<\/strong><\/a> and <a href=\"https:\/\/me.sap.com\/notes\/0003245402\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >SAP Note 3245402 &#8211; OData Service throws an error: System alias &#8216; &#8216; does not exist<\/a><\/li>\n\n\n\n<li>Users hide applications themselves \u2013 if users can personalize groups in the FIORI system, users often experiment with the system or accidentally hide tiles from the FIORI application view. This can be done using the Edit Home Page option by clicking on their avatar in SAP FIORI:<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-31-Edit-Home-Page-wejscie-do-aplikacji.png\"><img decoding=\"async\" width=\"179\" height=\"358\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-31-Edit-Home-Page-wejscie-do-aplikacji.png\" alt=\"Edit Home Page \u2013 accessing the application\" class=\"wp-image-29022\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-31-Edit-Home-Page-wejscie-do-aplikacji.png 179w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Ryc.-31-Edit-Home-Page-wejscie-do-aplikacji-150x300.png 150w\" sizes=\"(max-width: 179px) 100vw, 179px\" \/><\/a><figcaption class=\"wp-element-caption\">Fig. 31 Edit Home Page \u2013 accessing the application<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Summary<\/strong><\/h2>\n\n\n\n<p>Although managing the access and visibility of applications and data within the SAP FIORI environment may seem challenging, knowing the right tools and common issues can greatly simplify the process.<\/p>\n\n\n\n<p>It is helpful to prepare a so-called task list with potential problems, solutions, and instructions to address them and systematically apply it when the cause is unclear. Over time, this approach becomes second nature, and you can identify and resolve issues in just a few minutes. Additionally, in today&#8217;s world, it is beneficial to utilize AI-powered tools that can provide valuable insights and even offer step-by-step solutions. I hope this article proves helpful and aids in the rapid resolution of common issues, ultimately encouraging end-users to use FIORI applications instead of the traditional GUI \ud83d\ude0a<\/p>\n\n\n\n<p>*** <\/p>\n\n\n\n<p>If you are interested in SAP topics, also take a look at <a href=\"https:\/\/sii.pl\/blog\/en\/all\/sap-en\/\" target=\"_blank\" aria-label=\"other articles by our specialists (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\">other articles by our specialists<\/a>.<\/p>\n\n\n\n<p><br><\/p>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-left kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;left&quot;,&quot;id&quot;:&quot;29027&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;7&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;5&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;2&quot;,&quot;greet&quot;:&quot;&quot;,&quot;legend&quot;:&quot;5\\\/5&quot;,&quot;size&quot;:&quot;30&quot;,&quot;title&quot;:&quot;SAP FIORI authorization troubleshooting&quot;,&quot;width&quot;:&quot;159&quot;,&quot;_legend&quot;:&quot;{score}\\\/5&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 159px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 2px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 30px; height: 30px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 24px;\">\n            5\/5    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>The SAP FIORI environment has been available on the market for many years. Yet, still, in almost every project I&#8217;ve &hellip; <a class=\"continued-btn\" href=\"https:\/\/sii.pl\/blog\/en\/sap-fiori-authorization-troubleshooting\/\">Continued<\/a><\/p>\n","protected":false},"author":666,"featured_media":29026,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","inline_featured_image":false,"footnotes":""},"categories":[1320],"tags":[1776,1590,1526,1499],"class_list":["post-29027","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hard-development","tag-sap-fiori-en","tag-tools","tag-guidebook","tag-sap-en"],"acf":[],"aioseo_notices":[],"republish_history":[],"featured_media_url":"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/09\/Rozwiazywanie-problemow-z-autoryzacja-SAP-FIORI.jpg","category_names":["Hard development"],"_links":{"self":[{"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/posts\/29027"}],"collection":[{"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/users\/666"}],"replies":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/comments?post=29027"}],"version-history":[{"count":3,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/posts\/29027\/revisions"}],"predecessor-version":[{"id":33801,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/posts\/29027\/revisions\/33801"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/media\/29026"}],"wp:attachment":[{"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/media?parent=29027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/categories?post=29027"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sii.pl\/blog\/en\/wp-json\/wp\/v2\/tags?post=29027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}