Základy PHP: Začnite programovať hneď teraz!

Ako sa stať analytikom časť 2: Informačné systémy alebo Prečo sú s BI také problémy

kategória: Blog pridané: 17. júla 2017

Viackrát som sa na svojich kurzoch stretol s účastníkmi, ktorý si v oblasti spracovania a analýzy údajov vybrali zlý kurz. Bolo to spravidla kvôli nedostatočnému prehľadu o možnostiach, ktoré majú k dispozícií. Táto séria článkov má urobiť práve takýto ucelený prehľad o analyzovaní údajov od základných konceptov ako je BI, cez nástroje použiteľné pri spracovaní importu až po SQL a iné pokročilé nástroje. 

Druhá časť seriálu sa zaoberá problémom informačných systémov ako je napr. SAP. Dozviete sa v nej ako nám tieto systémy pomáhajú pri bežnej práci, a prečo sú napriek týmto systémom problémy pri analyzovaní.

Informačný systém vs. Databáza

Idea informačného systému spočíva v nástroji, ktorý používajú všetci zamestnanci. V jednej časti obchodník vytvára objednávky z produktov, ktoré sú evidované na sklade skladníkom. Účtovník na základe týchto údajov pripravuje finančné podklady. Vedúci oddelení si na základe informácií vedia zobraziť predajnosť podľa produktov alebo efektivitu zamestnancov. Keďže máme všetky údaje na jednom mieste, tak nám tvorca s radosťou vyprodukuje všetky výstupy, v ktorých si manažér nájde tie biznis informácie, ktoré potrebuje. Typickým predstaviteľom takéhoto systému pre veľké spoločnosti je SAP. Pozor, ak sa vám začalo v mysli vynárať slovíčko databáza, tak to je omyl. Informačný systém (napr. SAP) je rozhranie na efektívnu prácu s údajmi, tzv. front-end, veľmi hlúpo povedané okienko s tlačítkami. Databáza na skladovanie údajov je dôležitá a žiaden informačný systém sa bez nej nezaobíde. Pre obyčajného užívateľa (obchodník, finančný kontrolór, skladník, … ) sú však databázové údaje neprehľadné, a teda nepoužiteľné. Informačný systém je práve od toho, aby nám ich zobrazil v zrozumiteľnej a prehľadnej podobe. Veľmi často sa takéto riešenia vyskytujú v podobe rôznych intranetových web stránok. Na obrázku je zobrazený systém SAP ako jediný informačný systém spoločnosti. Zároveň je zobrazený súvis niektorých pracovných pozícií, ako je SAP programátor a databázový vývojár. Pozor, tieto pozície nesúvisia z bežnou agendou spoločnosti a často sú to  zamestnanci externej partnerskej spoločnosti, ktorá SAP nasadila a prevádzkuje. Ďalší klasický omyl je pliesť si pozície, kde sa v systéme SAP robí (obchodník, skladník …) s pozíciami, kde sa systém SAP vyvíja (programátor, DB vývojár, analytik …).

Prečo teda potrebujeme v práci Excel

Znie to dobre mať všetko pod jednou strechou. Jeden klik, tu viem vytvoriť objednávku, druhý klik tu mám z objednávok zobrazené tržby. Tento scenár sa dá prirovnať ku bežnému praciemu prášku. Každý ho pozná, ale pochybujem, že ste ho niekedy videli v obchode. V praxi to znamená, že dostať všetky údaje do jedného systému je dosť zložité. Problémom môže byť napr. ak je finančná časť riešená mimo firmu (externou spoločnosťou). To znamená, že informácie o prijatých a vystavených objednávkach sú v dvoch systémoch. Ďalší veľmi aktuálny príklad môžu predstavovať Internetové obchody a údaje o návštevnosti web stránok z Google Analytics. V prípade veľkých korporácií to môže byť dedičstvo z minulosti (fúzia s inou spoločnosťou) a z toho vyplývajúce samostatné systémy. Tieto sa síce neskôr prepoja alebo sa jednoducho vyvinie systém nový, ale to rozhodne nie je otázka mesiacov, ale skôr rokov.  Čo s tým? Ako má získať manažér alebo vedúci tímu informácie, ktoré mu systém neponúka, lebo časť informácií je na inom mieste? Okamžité riešenie, ktoré je vždy poruke, je klasická postupnosť: Exporty z oboch systémov do xls (alebo xlsx) –> VLOOKUP –> Kontingenčná tabuľka. Na obrázku dolu je ilustrovaná situácia, kde takýmto spôsobom najskôr hľadáme informácie o krajoch ku objednávkam z tabuľky zákazníkov, na základe ktorých potom vypočítame jednotlivé tržby v krajoch.

Komplikácie, alebo prečo nestačí poznať iba funkciu VLOOKUP

Pri troche šťastia nám toto riešenie bude stačiť. Pod šťastím nemám na mysli to, že náš zamestnanec (môžeme ho pracovne pomenovať Jano) tieto nástroje našťastie pozná. Ak nie, treba Jana poslať na náš kurz Excel 3 pre pokročilých. Šťastím v tomto prípade je, ak sú všetky výstupy zo systémov XLS a netreba ich vôbec upravovať. Ako problém vám bohato postačí, ak vám jeden systém uloží čísla zákazníkov v číselnej a druhý v textovej podobe. S porovnávaním v takomto prípade ďaleko nezájdete, pokiaľ údaje neskonvertujete na rovnaký typ údajov. Pričom náš scenár môže byť okorenený o niekoľko takýchto stĺpcov, ktoré treba skonvertovať, prerobiť, vyčistiť, vytiahnuť časť textu a podobne. Excel má práve na tekéto účely logické, textové a dátumové funkcie. Ako ilustráciu môžem uviesť prípad, kde potrebujeme vytiahnuť dátumovú informáciu z textu, v ktorom je zakódovaná v podobe RRRRMMDD, Viď obrázok.

Ok, poznám Excel funkcie som kráľom sveta. Či?

Prvý závažnejší problém nastane, ak náš systém nevyprodukuje XLS, ale textový súbor CSV. Čo je v stručnosti textový súbor obsahujúci tabuľku s údajmi v ktorých sú stĺpce oddelené čiarkou. Viď obrázok. Problém spočíva v správnom importovaní (načítaní) údajov. CSV je totižto možné priamo otvoriť do Excelu dvojklikom. Tento spôsob však môže spôsobiť, že namiesto 4. januára nám v tabuľke zobrazí 1. apríla. Opraviť to je problém, lebo funkcia na opravu by bola dosť zložitá. Ďalší častý problém spojený s textovými zdrojmi je rozbitá diakritika. Poznáte to podľa toho, že v texte máte namiesto znakov č,š,ť,ž nezmyselné symboly. Pointa je v oboch prípadoch – údaje správnym spôsobom importovať.  Prácu s funkciami na úpravu údajov, ako aj správne ich importovanie, nielen z textu, ale aj z databázových zdrojov preberáme na kurze Excel 4.

Najhoršie situácie, aspoň pre nášho Jana, nastávajú ak si nemôže urobiť funkciu, čo znamená manuálnu prácu. Môže sa jednať napr. o transformovanie celej tabuľky, lebo nemá vyhovujúcu databázovú štruktúru (presúvanie stĺpcov, odstraňovanie medzier, …), alebo musíme výstup kopírovať z textových výstupov PDF. Pričom nezabúdajme problém čerpania údajov z webu (viď náš problém s Google Analytics). Problém samozrejme nie je pri jednorazovom reporte, jedno kopírovanie hádam Jano zvládne. Problém nastáva pri opakovaných výstupoch, ak to náš nešťastný Jano musí robiť každý týždeň, nebodaj každý deň. Po dlhšom čase takéhoto fungovania to spôsobí, že sa vo firme začne rapídne zvyšovať počet ohryzených pier a ceruziek. V rámci zachovania psychologickej rovnováhy treba tento proces automatizovať, pokiaľ možno v rámci možností štandardného zamestnanca, čiže v rámci Programu Excel. V minulosti sa na tieto účely používali Makrá VBA, v súčasnosti máme nástroje PowerQuery a PowerPivot. Na ich použitie a možnosti sa pozrieme v ďalšej časti.

autorom článku je: Ing. Patrik Toman
Patrik je lektorom takmer od vzniku spoločnosti. Jeho hlavným zameraním je analýza údajov, či už v Exceli alebo vo veľkých databázach pomocou jazyka SQL. V tejto oblasti ho môžete aj najčastejšie stretnúť ako lektora. Okrem databáz a analytiky má široký prehľad aj z oblasti serverov a počítačových sietí. Preto ho môžete stretnúť aj na školeniach Linux alebo Microsoft Windows Server.

Podeľte sa s nami o svoj názor:

Páči sa Vám článok alebo novinka?