Lekce 4 - InfoPackage, nahrání dat do PSA
V minulé lekci, Aplikační komponenta a DataSource v SAP, jsme si vysvětlili, že datové zdroje v SAP BW vkládáme do aplikačních komponent a vytvořili si prázdnou PSA. Dnes se podíváme na další SAP objekty, kterými jsou InfoPackage, a jak se pomocí nich dají do PSA data nahrát.
Založení InfoPackage
PSA (Persistent Staging Area) je první vrstva datového
skladu, to jsme si již vysvětili v minulé lekci. Zde jsou data uložena beze
změny, jak přišla ze zdroje. Pro představu PSA je jen a pouze místo na
uložení (prázdná databázová tabulka), laicky jej můžeme označit jak
KAM data budou uložena. Infopackage poté
představuje odpověď na otázku JAK?. Ano, pomocí
Infopackage se definuje, jak se data přenesou do PSA z Datasource (datového
zdroje). Jmenná konvence je totožná jako u ostatních SAP objektů,
počáteční písmeno při založení by mělo být
Z
, Y
či X
.

Infopackage se vždy váže na konkrétní datový
zdroj, proto ve stromovém zobrazení stačí vyvolat pomocí pravého
tlačítka myši menu a vybrat Create InfoPackage
.

Je nutné vyplnit popisek a nový objekt pomocí ikony (SAVE) uložit.

Pokud se při uložení ukáže podobné okno jako na obrázku níže
(žádost o založení transportu), je vše v pořádku. Každý nový objekt v
SAPu chce při založení nějaký transport, aby bylo možné potom objekty z
vývojové verze systému protransportovat do produkčního systému. Ale o
tomto si povíme později. Nyní stačí jen dole vybrat možnost
Local Object
. Tím pádem se objekt nevloží do transportu a
zůstává jen a pouze v daném systému, na kterém je uživatel
přihlášený.
)
Nastavení InfoPackage
Infopackage je nyní možné ještě dále nastavit, projdeme si jednotlivé záložky:
Data Selection
Zde již můžeme pomocí filtrů omezit, jaká data budou nahrána do PSA. Zpravidla se to ale nedělá. Již víme, že best practice je, že by v PSA měla být všechna data, bez jediného zásahu. Prostě a jednoduše surová, jak přišla.

Extraction
V této záložce se již definuje, co bude zdrojem, zda lokální stanice a nějaký CSV či Excel file, či vzdálený server. Dále jaké kódování bude použito pro přeložení dat, zda vstupní data obsahují hlavičku či ne a jestli se má hlavička ignorovat. Pro naše účely vybereme nejjednodušší variantu - nahrání dat z CVS souboru.
Budou pro nás důležité údaje:
- Adapter - definuje typ způsobu nahrání dat (buď z lokálního souboru či SAP file systému)

- File Name - fyzická cesta k souboru, ale může být i logická (více na https://wiki.scn.sap.com/…or+Archiving)
- Header Rows to be Ignored - řádka, která obsahuje
hlavičku, může být přeskočena ve vstupních datech, nejčastěji to je
první řádek (
1
). - Character Set String - zde je buď výchozí možnost
Default Setting
, nebo je možné vybrat druhou možnostDirect Input
a vybrat jaké kódování se použije pro nahrání dat (např. UTF-8) - Data Format - udává, jak se ze souboru získají data. Buď nastavíme, že data jsou vždy na fixních pozicích (více na https://www.ibm.com/…t_about.html), nebo je získáme pomocí oddělovače (případ pro CSV soubory), pak se zde definuje, jaký znak (Data Separator) je oddělovač.

Processing
V této záložce se dá nastavit až kam se data mají nahrát a jak (zpravidla jen do PSA) a dále mohou být zprocesována přes DPT (Data Prozess Transfer) do DSO či do Inprovideru. Záleží, jak je daný datový model postavený.

Co je zde zajímavé, tak standardně běží nahrávání paralelně (3 vlákna):

Update
Tato záložka obsahuje nastavení, kolik dat se ze zdrojového systému či souboru nahraje. Prakticky jsou k dispozici dvě možnosti:
- DELTA update - vždy se nahraje jen část dat, kde se podle nějakých pravidel určí (záleží, jak je datový zdroj nastavený), co již nahráno bylo a donahraje se pouze rozdíl. Příkladem může být časová známka u záznamů.
- FULL update - tato volba znamená, že se nahraje vždy vše (Pozor: pokud takto nastavený update spustíte 2x za sebou, mohou poté vzniknout duplicity v PSA a problémy ve zpracování dat dále).

Schedule
Pokud jsme vše naklikali správně a nový Infoobjekt uložili, tak zde se
pomocí tlačítka START
ručně spustí nahrání
dat.

Již nevyskočí žádné nové okno, jen malá hláška v info oblasti:

Ověření nahraných dat v PSA
Nyní se podíváme, jestli se data nahrála a hlavně jak. Otevřeme si (dvojklikem) PSA a nahoře se aktualizuje menu:

1. možnost
Každý objekt v SAPu je ve finále uložený v tabulce a nebo je přímo
tabulkou. To platí i v případě PSA. SAP vygeneroval pro náš datový zdroj
Z_ITNETWORK
tabulku /BIC/B0006288000
, do které se dá
prokliknout a zobrazit obsah (Pozn.: toto je rychlejší cesta, jak si zobrazit
obsah, ale standardní je postup, který bude následovat). Otevřeme technické
atributy objektu a proklikneme se dále:

Klikneme na obsah tabulky:

V novém okně se již zobrazí všechna pole tabulky (PSA), je zde možné filtrovat výsledný obsah. Po kliknutí na hodiny se zobrazí již obsah PSA:

Obsah PSA
Jak je vidět, první 4 modré sloupce si SAP vytvořil sám, jde o primární klíče tabulky a uživatel na ně nemá žádný vliv. Proto je jakékoliv hledání v PSA velice pomalé, neexistuje totiž žádný index (uživatelský), díky kterému by hledání šlo urychlit.

Porovnání CSV filu a nahraných dat
Nahoře je obsah PSA a dole obsah CSV. Je vidět, že se nahrání povedlo, ve zdroji i v cíli máme 4 řádky:

2. možnost
Druhou možností je zobrazit si data přes standardní údržbu PSA vrstvy. Klikneme na ikonu a zobrazí se nové okno, kde je seznam všech requestů (nahrání) do PSA. Pomocí bočního tlačítka vybereme request, který chceme zobrazit, a opět stejnou ikonou, nyní dole v okně, potvrdíme.

Při nahrávání do PSA ještě systém rozděluje data do tzv.
package
, neboli pakety
. Proto je nutné opět pomocí
bočního tlačítka vybrat pakety, které mají být zobrazeny. V nabídce
níže, pokud je počet dat velký, je nutné změnit z defaultní hodnoty
1000
na větší počet, aby výsledek nebyl oříznutý. Nakonec
stačí potvrdit háčkem:

Porovnání CSV filu a nahraných dat
Nahoře máme obsah PSA a dole obsah CSV. Je vidět, že se nahrání povedlo, máme ve zdroji i v cíli 4 řádky.


Jak vidíte, první možnost nabízí:
- filtrovat všechna pole a analyzovat obsah PSA pomocí standardních utilit tabulek
- rychlejší přístup k obsahu
Druhá možnost potom umožňuje:
- spravovat requesty nahrání dat
- odmazávat nahrané requesty
- filtrovat podle paketů
- zdlouhavější zobrazení obsahu
Tímto jsme si ukázali a vysvětlili co je Infopackage a jak se nahrávají data do PSA. Příště se podíváme na Data Store Object (DSO) v SAP.