SappyCar: ERP řešení pro automobilový průmysl

SAP je již po mnoho let světovou jedničkou mezi podnikovými informačními systémy. Tak je i vnímán laickou veřejností, která často dělí IT řešení na ty, které nesou tuto značku a "ty ostatní". Systémy SAP dominují především v nadnárodních korporacích a velkých organizacích veřejné a státní správy. Na bázi "velkého ERP produktu" SAP Business Suite jsou však úspěšně rozvíjena také oborová řešení pro středně velké výrobní a obchodní firmy, které pod názvem SAP Business All-in-One budují a implementují téměř výhradně partnerské organizace. Jednu z nejvýznamnějších na českém trhu, společnost Aimtec a její produkt SappyCar, si představíme v 18. díle našeho pravidelného seriálu.

3. Architektura a hlavní technologické aspekty systému

Architektura systému a komplementární technologie

Základní technologickou devizou řešení SAP je nezávislost na platformě. Lze jej nasadit v prostředí Microsoft Windows, Linux, Unix nebo i5/OS (IBM), a to na nejrůznějších databázových strojích, jako jsou Microsoft SQL Server, Oracle Database, IBM DB2 nebo MySQL. K dispozici je i databázová platforma MaxDB, která od roku 2007 opět patří k produktům SAP. Používá se především pro rozsáhlé implementace, neboť je schopna provozovat databáze o velikosti TB v nepřetržitém provozu.

SAP funguje na dvouvrstvé i na třívrstvé architektuře klient/server. Používá technologii tenkého klienta, která umožňuje rychlou komunikaci. Uživatelské nastavení aplikace (protokoly, dokumenty, osobní hodnoty) se ukládá na aplikačním serveru. Terminálový provoz je podporován komponentou ze SAP NetWeaver, která zajišťuje komunikaci s těmito zařízeními. Veškeré operace tak probíhají na serveru, na terminálovém zařízení se zobrazují pouze výsledky zadaných úloh.

Obr. 3: Architektura systému
(Klikněte na obrázek pro zvětšení)

K čemu slouží integrační platforma

SAP NetWeaver byl uveden na trh v roce 2003 s cílem proměnit heterogenní prostředí podnikových systémů v integrované řešení, které by nabídlo minimálně propojení pracovníků, informací a procesů v rámci celého podniku a všech používaných technologií. Jen za tohoto předpokladu se totiž podnik může rychle adaptovat na změny. NetWeaver jako jedno z několika ucelených EAI řešení slouží k zajištění spolehlivého, bezpečného a škálovatelného provozu funkcionalit SAP Business Suite, kompozitních xApps aplikací i produktů třetích stran, pokud jsou na podnikový systém napojeny. Takto lze lépe dosahovat návratnosti investic do již nasazených aplikací a jednoduše připojovat systémy nové.

Integrační a aplikační platforma SAP NetWeaver využívá otevřené standardy, nezávislé na dodavateli a použité technologii. Komunikace probíhá na bázi SOAP, strukturované zprávy ve formátu XML jsou zpravidla přenášeny protokolem HTTP/S. S odstupem času od představení SAP NetWeaver lze říci, že se zcela prosadila progresivní technologie webových služeb, komunikační formát XML a specifikace J2EE pro Java. Pro integraci nejsou důležité jen standardy pro výměnu dat, ale postupně čím dál více také pro procesní management (BPEL), bezpečnost (SSL), metodiku a datové modelování. Společně všechny jmenované standardy přispívají k naplňování konceptu SOA (Service Oriented Architecture).

SAP NetWeaver zajišťuje celou řadu činností od správy, administrace, komunikace s databázovým serverem přes mobilní komunikace. Jeho přirozenými vrstvami, podobně jako je tomu u konkurenčních EAI platforem, se staly portály, datové sklady a analytické nástroje, integrační brokery s procesními modelovacími nástroji a webové aplikační servery. NetWeaver má vlastní vývojové prostředí ABAP, rozšířené o možnost programování v Java. Nové SOA funkcionality SAP jsou již postavené na Java vývojových standardech.

SAP NetWeaver má vlastní struktury tabulek aplikační a technologické logiky. K tomu, aby se implementace SAPu přiblížila zákazníkům, obsahuje tato komponenta tzv. Solution Manager, jehož prostřednictvím uživatel řídí instalaci a administraci systému SAP. Solution Manager zobrazuje krok po kroku celý průběh implementace, sleduje, kontroluje a protokoluje každý prováděný úkon.

Vývojové prostředí, modifikace a upgrade systému

SAP má detailně propracovaný způsob vývoje. Zdrojový kód je přístupný všem uživatelským organizacím. Pokud klient potřebuje jakoukoli modifikaci, a to nejen na úrovni reportu, ale i v logice transakcí a funkcí, může tuto změnu provést. Po implementaci systému obdrží charakteristiku celého řešení, včetně manuálu a kompletní dokumentace. V těchto dokumentech je popsán systém, způsob, jakým se provádí modifikace a nastavení, a jak jsou monitorovány změny jednotlivých uživatelů.

Úpravy lze provádět na několika různých úrovních. Pro klientské modifikace jsou v SAPu tzv. "user exit", přes něž uživatel může nastavit vlastní logiku pro zpracování transakce. Příkladem může být oceňování zásob – klient si může vybrat vlastní vyhovující způsob výpočtu, který samozřejmě musí být v souladu s legislativou. Tyto úpravy jsou poté systémem preferovány a používány.

Druhou úrovní je "tvrdý nestandard", kdy klient skutečně zasáhne do vlastního zdrojového kódu. Systém zaznamená začátek a konec zápisu, zabalí si jej do objektu. Dokáže zaznamenávat úpravy více vývojových pracovníků. Systém je tedy postaven tak, že sleduje všechny provedené změny, zaznamenává je a umožňuje jejich testování. Teprve poté jsou přesouvány do rutinního provozu. V případě neodborného zásahu je možné úpravu vrátit zpět. Veškeré úpravy jsou v systému evidovány a testovány rovněž pro upgrade na nové verze. Důvodem pro tato opatření je ochrana standardní funkcionality a usnadnění přechodu na vyšší verzi systému.

Samotná inovace systému SAP probíhá přes komponentu NetWeaver, nazvanou Upgrade Manager. Ten dokáže jednotlivé modifikace oddělit od standardního systému, a po nahrání nové verze vložit úpravy opět zpět. Pokud se změnil zdrojový kód v místě změny, administrátor prostřednictvím nástroje k tomu určenému objekt přiřadí. Poté již dle implementační metodologie proběhne fáze testování a ověřování a přechází se do rutinního provozu. Celý upgrade tak probíhá bez zásahu konzultantů SAP, kteří provedou pouze kontrolu správnosti zařazení do zdrojového kódu. Většina zákazníků ovšem pracuje na úrovni tvorby reportů pomocí systémových nástrojů.

Obr. 4: Uvádění jednotlivých verzí ERP systému SAP na trh
(Klikněte na obrázek pro zvětšení)

Otevřenost systému a napojení externích aplikací

Možnost napojení externích aplikací je velkým přínosem řešení SAP. Mnoho zákazníků není ochotno vzdát se vyzkoušených a dobře fungujících aplikací, hlavně v oblasti mezd a docházkových systémů. Velký průlom v otevřenosti systému přišel s novou verzí SAP. Technologická komponenta BAPI (Business Application Interface) obsahuje funkční balíčky (účetní doklad, dodavatel, odběratel) a k nim dokumentaci, popisující vlastnosti jednotlivých polí. V pozadí jsou technologie (RFC - Remote Function Call), které umí tyto balíčky zpracovat a poslat do transakce. Třetí strana obdrží dokumentaci s údaji vysvětlujícími, která pole je nutné pro účetní doklad vyplnit a jak se vyplňují. Komunikace mezi aplikacemi funguje automaticky v reálném čase, případné chyby jsou řešeny uživatelem prostřednictvím monitorovacího uživatelského prostředí. Jednu z největších realizací tohoto rozhraní mají za sebou konzultanti společnosti Aimtec u netypického zákazníka, na Magistrátu města Plzně, kde je zajištěna komunikace SAP s externími agendami jednotlivých organizací.

Pro spolupráci se systémy jiných výrobců je k dispozici další komponenta, která se jmenuje PI (Process Integration) a je součástí SAP NetWeaver. Jde až za hranice SAP a je určena pro společnosti, které mají více aplikací třetích stran. Umožňuje nastavení pravidel pro provázání jednotlivých polí, komunikaci a protokolování. Zajišťuje také posílání informací zpět do SAP.

Obr. 5: Schéma napojování externích aplikací
(Klikněte na obrázek pro zvětšení)

Komponenty pro napojení externích aplikací se licencují na pojmenované uživatele. Licenční model funguje tak, že zákazník obdrží celý sortiment komponent pro napojení externích aplikací. Mzdový systém si vystačí s komponentou BAPI. Pokud by však chtěl zákazník později využít všechny možnosti pro napojení externích aplikací, tak si jen zažádá o implementační služby a komponenta PI mu bude doinstalována.


01.12.2010 - Petr Sodomka, Dagmar Šulová