Technický model objektů SAP Fiori
- mmartiskova
- 3. 6. 2024
- Minut čtení: 4
SAP Fiori je aktuální přístup společnosti SAP k uživatelským rozhraním. Zvykají si na něj uživatelé, vývojáři a přizpůsobit se musejí také správci oprávnění. V následujícím textu rozebereme databázový model SAP Fiori objektů důležitých pro přípravu oprávnění a administraci uživatelského rozhraní pro koncové uživatele.
V dobách SAP pravěku administrátoři i uživatelé používali pouze transakce. Tehdy bylo snadné vyznat se v tom, kde jako administrátor najdu potřebné aplikace a jak připravím oprávnění a menu uživatelům. Seznam transakcí najdeme v databázové tabulce TSTC dodnes a uživatelé vidí připravené menu hned po přihlášení do systému pomocí SAP GUI přesně tak, jak ho administrátor připravil v transakci PFCG.
V následující generaci uživatelských rozhraní se přidaly BSP aplikace, WDA aplikace, případně technické aplikace typu IDOC, RFC funkce a další. Tato nová vlna aplikací hrozila komplikovat práci pro administrátory bez vývojářské zkušenosti. Naštěstí se tak nestalo, protože příprava rolí využívá mezikrok přes tabulku USOBHASH. Administrátor tak pracoval s aplikacemi, které mu vývojář zveřejnil do tabulky USOBHASH.
V těch historických dobách byla příprava oprávnění „jednovrstevná“. Co se připravilo v menu role v transakci PFCG bylo všechno, co bylo potřeba řešit. Neexistovalo více vrstev, které se navzájem ovlivňují, ale není možno je administrovat najednou. Bohužel tato „jednovrstevnatost“ s nástupem SAP Fiori končí. Do menu role se umisťuje Fiori catalog, Fiori group nebo Fiori space, jenže co je uvnitř těchto objektů se administruje někde jinde. To přináší značnou nepříjemnost ve vytváření závislostí. Je tak možné, že reference v jednom objektu (například v menu role) ukazuje na objekt, který již neexistuje, nebo objekt, který se od původního použití významně změnil. To je přesně ten okamžik, kdy si potřebujeme vysvětlit databázové schéma jednotlivých SAP Fiori objektů, protože dříve nebo později nás situace donutí jít informace do daných databázových tabulek hledat nebo kontrolovat.
Databázový model
SAP Fiori objekty v menu role: tabulka AGR_BUFFI, políčko URL
Catalog – prefix X-SAP-UI2-CATALOGPAGE:<catalog>
Group – prefix sap-ui2-group:<group>
Space – bez prefixu, ale vyžaduje křížovou kontrolu v tabulce AGR_HIER, pole
REPORT musí mít hodnotu SPACE_PROVIDER
Obecně řečeno lze pro všechny tři typy objektů využít také tabulku AGR_HIER a hledat řádky kde REPORT obsahuje hodnotu CAT_PROVIDER, GROUP_PROVIDER nebo SPACE_PROVIDER.
SAP Business catalog a SAP Fiori group (pozor: dva ze tří typů objektů v jedné tabulce)
/UI2/PB_C_PAGEM – definice objektu, pro scope=CUSTOMIZING
/UI2/PB_C_PAGE – definice objektu, pro scope=CONFIGURATION
/UI2/PB_C_PAGEMT – popis objektu, pro scope=CUSTOMIZING
/UI2/PB_C_PAGET – popis objektu, pro scope= CONFIGURATION
Všimněte si, že písmeno M je rozdíl ve jménu tabulky pro odlišný scope.
Catalogs a groups rozlišíme takto:
Catalog – ID prefix X-SAP-UI2-CATALOGPAGE:*
Group – políčko CATALOG_ID hodnota /UI2/FLPD_CATALOG
Fiori Technical catalogs a aplikace:
SUI_TM_MM_CAT – definice technického katalogu
SUI_TM_MM_CATT – popis technického katalogu
SUI_TM_MM_APP – aplikace v technických katalozích
Fiori Spaces:
/UI2/STHEADC – definice Fiori space, pro scope=CUSTOMIZING
/UI2/STHEAD – definice Fiori space, pro scope= CONFIGURATION
/UI2/STHEADCT – popis Fiori space, pro scope=CUSTOMIZING
/UI2/STHEADT – popis Fiori space, pro scope= CONFIGURATION
/UI2/STPGAC – Fiori pages v konkrétní Fiori space, pro scope=CUSTOMIZING
/UI2/STPGA – Fiori pages v konkrétní Fiori space, pro scope= CONFIGURATION
Všimněte si, že písmeno C je rozdíl ve jménu tabulky pro odlišný scope. V případě business catalogs to bylo písmeno M, v moderních tabulkách pro Spaces a Pages je to písmeno C.
Fiori Pages:
/UI2/PGHEADC – definice Fiori page, pro scope=CUSTOMIZING
/UI2/PGHEAD – definice Fiori page, pro scope= CONFIGURATION
/UI2/PGHEADCT – popis Fiori page, pro scope=CUSTOMIZING
/UI2/PGHEADT – popis Fiori page, pro scope= CONFIGURATION
Všimněte si, že písmeno C je rozdíl ve jménu tabulky pro odlišný scope. V případě business catalogs to bylo písmeno M, v moderních tabulkách pro Spaces a Pages je to písmeno C. Dále si všimněte, že v případě Spaces je definována tabulka pro přiřazení Spaces a Pages. Důvodem je, že jak Spaces, tak Pages jsou „globální“ samostatně definované objekty, mezi kterými nastavujeme vztah (podobně jako mezi Single a Composite rolemi v transakci PFCG).
Fiori Page sections:
/UI2/PGSECC – definice Fiori page section, pro scope=CUSTOMIZING
/UI2/PGSEC – definice Fiori page section, pro scope= CONFIGURATION
/UI2/PGSECCT – popis Fiori page section, pro scope=CUSTOMIZING
/UI2/PGSECT – popis Fiori page section, pro scope= CONFIGURATION
Všimněte si, že písmeno C je rozdíl ve jménu tabulky pro odlišný scope. V případě business catalogs to bylo písmeno M, v moderních tabulkách pro Spaces a Pages je to písmeno C.
Dále si všimněte, že v případě Spaces a Pages existuje tabulka, kde je lze k sobě volně přiřazovat, protože to jsou samostatné objekty. V případě Page sections to už neplatí, protože Page sections samostatně neexistují, jsou definovány pouze v rámci své Page (a tedy zde automaticky přiřazeny).
Nakonec si všimněte, že Spaces a Pages mají názvy tzv. „pro lidi“, zatímco Page sections jsou identifikovány generovaným hash řetězcem.
Fiori Page section tiles/target mappings:
/UI2/PGSECAIC – Page section TTM deklarace, pro scope=CUSTOMIZING
/UI2/PGSECAI – Page section TTM deklarace, pro scope= CONFIGURATION
Deklarace umožňuje především se na jednotlivé TTM záznamy odkazovat v dalších tabulkách a dále například definovat jejich pořadí.
/UI2/PGSECAITIC – Page section TTM detaily, pro scope=CUSTOMIZING
/UI2/PGSECAITI – Page section TTM detaily, pro scope= CONFIGURATION
Poznámka na závěr: Standardní aplikace SAP dává uživateli pocit, že může přiřadit nějaká TTM přímo do Fiori page, aniž by bylo třeba zabývat se Page section. Uživatelsky to tak skutečně je, ale technicky nelze Page section úroveň přeskočit.
Závěrem můžeme jen konstatovat, že množství informací a objektů SAP Fiori je podstatně komplexnější než předchozí vývojové kroky – nejdříve využívající pouze transakce a později „authorization defaults“. Systematickou prací není problém Fiori menu a oprávnění navrhnout nebo upravovat. Problém nastává pouze ve chvíli, kdy některé reference přestanou být platné, nebo změna sdíleného objektu bude vyhovovat jen části uživatelů, jiné však může omezit.
Comments