IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

5. diel - Dáta Store Object (DSO) v SAP

V minulej lekcii, InfoPackage, nahranie dát do PSA , sme si ukázali a vysvetlili čo je InfoPackage a ako sa nahrávajú dáta do PSA. Dnes sa pozrieme na ďalší InfoProvider, ktorým je DSO. Vysvetlíme si na čo sa používa, aké sú jeho výhody a aké sú jeho typy.

Dáta Store Object (DSO)

Čo je to teda DSO a prečo ho v SAP BW použiť? DSO, čiže Data Store Object, je ďalší InfoProvider v SAP BW a môže byť použitý ako ďalšia dátová vrstva v dátovom sklade. V princípe sa jedná o dvojrozmerné úložisko, ktoré najčastejšie obsahuje už vyčistená a skonsolidované pohybová dáta, alebo kmeňové dáta, ktoré majú vysoký detail. DSO obsahuje changelog a dokáže sa tak vysporiadať so zmenami dát v zdrojovom systéme.

Vlastnosti

Vlastnosti úložiska sú teda nasledujúce:

  • Dvojrozmerná transparentné tabuľka
  • Dáta spravidla bývajú uložená vo veľkom detaile
  • Z DSO je už možné reportovať (tento objekt môžeme teda použiť ako zdroj údajov)
  • Skladá sa z 3 tabuliek, jednou z nich je changelog, čím umožňuje reagovať na zmeny dát v zdrojovom systéme

Príklad

Majme obchod, ktorý dodáva tovar a na dodacom liste bude 1000ks batérií. Tento doklad bude uložený v SAP R3 systéme. Táto dátová sada bude extrahovaná do dátového skladu (do nášho DSO). Avšak dodací list v R3 môže byť kedykoľvek zmenený, ak si to zákazník praje, preto dôjde k poníženie na 500ks. Táto zmena musí byť taktiež zohľadnená v BW systéme.

Príklad DSO v SAP - Sap

Obrázok vyššie obsahuje:

  • SAP R3 - Zdrojový systém
  • DSO - InfoProvider v SAP BW (~ dátové úložisko)
  • Bex - Reportovacie nástroj od SAP (Bex Analyser)

Data (dodací list) je vytvorený a uložený v zdrojovom SAP R3 systému. Ďalej sú dáta extrahovaná do SAP BW do DSO. DSO prakticky obsahuje 3 tabuľky:

  • tabuľku nových dát
  • tabuľku aktuálnych dát
  • tabuľku zmien

Dáta sú najprv uložené do tabuľky nových dát. Potom musí byť aktivovaná, tzn. v DSO sa dáta presunú z tabuľky nových dát do tabuľky dát aktuálnych. Všetka história zmien sa ukladá do tretej tabuľky názvom change log.

Doklad s 1000ks sa extrahuje do DSO, do tabuľky nových dáta, kde sa pripíše + 1000ks. Po aktivácii sa tabuľka nových dát vymaže a dáta sa presunú do tabuľky aktuálnych dát (+ 1000ks). V change logu nič nebolo, tak tu pribudne aj jeden riadok (+ 1000ks).

Príklad DSO: prvý nahranie - Sap

Akonáhle dôjde k zmene v R3 systéme, teda že sa zníži počet batérií na 500ks, táto zmena sa musí premietnuť aj v dátovom sklade. Do tabuľky nových dát sa extrahuje 500ks, po aktivácii dát sa dáta z tabuľky nových presunú (predvolená vlastnosťou je PREPIS) do tabuľky aktuálnych dát, ale ide nastaviť aj súčet. A v tabuľke aktuálnych dát bude 500ks. Tabuľka nových dát sa týmto opäť vymaže a do change logu sa pridajú dva záznamy (-to čo tam bolo, teda -1000, a + čo sa novo prepísal, čo je +500). Tento mechanizmus funguje za predpokladu, že kľúče dátovej sady sú zhodné!

Príklad DSO: aktualizácia dát - Sap

Typy DSO

Sľúbili sme si, že si predstavíme jednotlivé typy tohto InfoProvideru.

# 1 Standard (štandardná)

Tento typ DSO má tri základné tabuľky, to sme si vysvetlili už vyššie. Princíp nahrávanie je tu rovnaký - napred sa nahráva do tabuľky nových dát, po aktivácii sa dáta presunú do aktívnych a do change logu sa uloží histórie.

Vlastnosti

Vlastnosti úložiska sú nasledovné:

  • Možnosť delta nahrávania (bližšie v ďalších kapitolách)
  • Aktivácia dát
  • Vlastné kľúče (možnosť vyhľadávania a indexácie)
  • Môže byť pomalší voči ďalším typom DSO

Založenie DSO

Vľavo v menu vyberieme InfoProvider a potom vyberieme InfoArea, pod ktorou nový objekt chceme založiť. Klikneme pravým tlačidlom myši a vyberieme Create DataStore Object:

Založenie DSO - Sap

Nový objekt sa musí pomenovať (stále platí vzťahujú údaje konvencie pre zákaznícke objekty, musí začínať X, Y či Z).

Takto vyzerá nové DSO, bez akéhokoľvek nastavenia:

Založenie DSO v SAP - Sap

Prejdime si teraz tá najpodstatnejšia nastavenia:

  • Setting -> Type of DataStore Object - Standard (týmto sa rozhoduje primárne správanie DSO), tu teda ten štandardné.
  • Key fields - Definovanie kľúčových polí (DSO je tabuľka, to sme si už vysvetlili vyššie). Kľúčové polia určujú jednoznačnosť dátovej sady v tabuľke (ak je návrh zlý, tak sa dáta potom prepisujú).
  • Data Fields - Dátové polia (všetky ostatné polia, ktoré chceme nahrávať a vyhodnocovať), patrí sem nielen charakteristiky, ale aj ukazovatele!
  • Navigation Attributes - Navigačný atribút nie je obsiahnutý fyzicky v DSO, ale pomocou kmeňových dát a atribútov sa pri reportovanie pomocou JOIN dáta databázovo pripojí a je možné aj vďaka tomu potom reportovať.

Princíp modelovanie DSO

Z ľavého okna pomocou horných tlačidiel vyberieme z akého InfoKatalogu chceme pridať charakteristiky a ukazovatele. Potom je jednoducho pomocou myšou presunieme podľa potreby pod jednotlivé uzly (POZOR: DSO musí mať vždy min. Jednu kľúčovú charakteristiku a jeden ukazovateľ, pokiaľ nemá, tak sa pri aktivácii vygeneruje chyba).

modelovanie DSO - Sap

InfoObjekty je možné vkladať aj priamo, ak vieme ich technický názov. Túto možnosť používame napr. Pre štandardné InfoObjekty akú sú 0CALDAY, 0CALYEAR, apod., Ale je možné takto vložiť i zákaznícke.

modelovanie DSO - Sap

Stačí napísať názov a potvrdiť klávesou Enter, celé okno potom zavrieme zelenú "fajkou" dole.

Štandardný model DSO - Sap

Teraz sú dva nové InfoObjekty súčasťou DSO:

modelovanie DSO - Sap

Akonáhle je modelovanie hotové, musí sa DSO, ako každý objekt v SAP, aktivovať:

Aktivácia DSO - Sap

Ak bolo všetko v poriadku, vypíše sa dole hláška "Object activated":

Aktivácia DSO 2 - Sap

Týmto sme si namodelovali prvú štandardnú DSO a ďalej sa pozrieme na ďalšie dva typy.

# 2 Direct Update

Tento typ nemá tri tabuľky ako štandardné DSO, ale je prispôsobený priamemu zápisu. Nastavenie, kľúčové polia a pod. Sú zhodné.

Modelovanie DSO v SAP - Sap

Možnosti zápisu sú nasledovné:

Vlastnosti

Ako sa nám zmenili vlastnosti úložisko oproti predchádzajúcemu typu?

  • Priamy zápis, teda jednoduchšia cesta k dátam
  • Dáta sú dostupné k reportovanie okamžite po nahraní
  • Nie je možné delta nahranie ani roll back, pretože tu nie je žiadny change log
  • Nie je žiadny monitor udalostí, čo sa nahralo, kedy pod. (Bližšie vysvetlíme v ďalšej kapitole)
  • Nie je podporované SAP BI štandardné nahrávanie z dátového zdroja

# 3 Write-Optimized (optimalizované pre zápis)

Tento typ má výhodu, že je najrýchlejší pre nahrávanie dát. Najčastejšie sa používa po PSA vrstve. Dáta sú tu uložené vo vysokom detailu.

Vlastnosti

  • Rýchle oproti štandardnej DSO, nie je nutná aktivácia dát
  • Každý nový záznam má vlastný technický kľúč (generované technické kľúče), každý nový záznam je ihneď vložený do tabuľky
modelovanie DSO - Sap

Oproti dvom DSO vyššie sa tento DSO líšia v tom, že má automaticky generované kľúče (0REQUEST, 0DATAPAKID, 0RECORD), ktoré zaručujú jednoznačnosť záznamu a teda je zápis rýchly.

modelovanie DSO - Sap

Ďalej je tu ešte možnosť definovať Semant Key, čo je podobné Key Fields. Tu však neplní funkciu jednoznačnosti, ale slúži skôr pre účely identifikácie chyby či duplicitných záznamov.

V spojení s týmto je možné aktivovať v DSO voľbu, aby systém pri nahrávaní kontroloval duplicitné záznamy (podľa sémantických kľúčov). Ak je voľba vypnutá, tak sa duplicitné záznam pridá ako nový riadok, ak zapnutá, je proces nahrávania prerušený.

modelovanie DSO - Sap

Po založení je objekt opäť nutné aktivovať, ale to už poznáme z dielov predošlých, že KAŽDÝ objekt v SAP musí byť pred použitím aktivovaný. Inak existuje iba v tzv. "M - modified" verzii. Po aktivácii ho systém skontroluje a ak je všetko konzistentné, zapíše objekt do Data Dictionary so statusom "A").

Týmto sme sa vysvätili DSO, jednotlivé typy a ich vlastnosti. Nabudúce sa pozrieme na Transformácie medzi InfoObjekty v SAP .


 

Predchádzajúci článok
InfoPackage, nahranie dát do PSA
Všetky články v sekcii
Sap
Preskočiť článok
(neodporúčame)
Transformácie medzi InfoObjekty v SAP
Článok pre vás napísal Migi
Avatar
Užívateľské hodnotenie:
2 hlasov
Autor se věnuje SAPu (BW), IT má jako koníček od malička a od nedávna ho IT začalo živit a bavit ještě víc :-)
Aktivity