FIREMNÍ APLIKACE


Snadné propojení firemních aplikací díky rozhraní API

Moderní rozhraní API umožňuje velmi snadnou vzájemnou komunikaci aplikací, specializovaných výrobních i jiných systémů, webových portálů, e-shopů či zařízení, bez ohledu na dodavatele a bez nutnosti programovat složité komunikační můstky. Pokud jsou navíc všechna data evidována v centrálním ERP systému, dovoluje to do firemních procesů aplikovat pokročilou automatizaci řízenou komplexně z jednoho místa.

Autor: Libor Vacata, ABRA Software

API (Application Programming Interface) je programátorské rozhraní umožňující vzájemnou komunikaci různých aplikací a jednoduchou správu všech dostupných dat. Je-li API rozhraní integrované přímo v informačním systému, jeho propojení s externími aplikacemi je jednodušší, rychlejší a méně náročné na datové přenosy. API funguje jako soubor volně dostupných nástrojů, funkcí a operací. Programátor může pracovat se standardními nástroji, aniž by potřeboval studovat složitou dokumentaci. K funkčnímu propojení jednotlivých systémů postačí pár řádek kódu a server díky API v reálném čase rovnou posílá data z aplikací do informačního systému a naopak.

Nezáleží pak na tom, že výrobu, sklady, e-shop, CRM nebo docházku spravujete v jiném externím systému, který vám vyhovuje. Se všemi daty nakonec vždy pracujete tam, kde potřebujete (například docházka je k dispozici ve mzdovém účetnictví). Prostřednictvím API může vše fungovat v jednom all-in-one systému bez chyb, ručního přepisování, dohledávání, odlišných uživatelských prostředí, mnoha školení, náročných exportů a importů dat.

Praktické využití API ve firmě

API má velmi široké využití v závislosti na oboru podnikání konkrétní firmy, a také na současném stavu a skladbě využívaných aplikací a systémů. Možnosti propojení jsou však takřka neomezené a díky jednoduchému rozhraní lze velmi snadno dosáhnout nové nebo lepší funkčnosti celého firemního prostředí.

Příklady běžného využití API

  • propojení e-shopu na customizovanou výrobu, se skladovým hospodářstvím, expedičním systémem, externí webovou či mobilní aplikací
  • mobilní aplikace online napojená na ERP nabízí obchodním zástupcům v terénu rychlý přehled o aktuálních cenách a dodacích lhůtách
  • data z docházkového systémů jsou ihned dostupná v informačním systému k zpracování mzdovou účetní
  • objednané zboží je zarezervováno a automaticky expedováno ihned po dodání či dokončení výroby a automaticky se každá změna ukáže ve skladu a projeví se také v inventuře
  • do informačního systému se automaticky nahrávají vždy aktuální dodavatelské ceníky
  • data ze senzorů IoT aktuálně vidíte tam, kde je potřeba – např. v rodném listu výrobku

Ve všech těchto situacích, ale také v mnoha dalších, lze s pomocí API redukovat rutinní práci, automatizovat mnoho zbytečných kroků a zbavit se chyb či zpoždění. 

Bezpečnost dat

Přístup k API je standardně povolen pouze uživatelům, kteří mají v systémech nastavena odpovídající oprávnění. V API lze nastavit také dílčí oprávnění např. pro přístup k řadám dokladů, střediskům atd. Při zpřístupnění API do internetu lze použít zabezpečený protokol HTTPS, díky kterému je potom veškerá komunikace s API šifrovaná.

Obr. Cyklus zpracování dotazu

Příklad fungování API v informačním systému ABRA Gen

API server je postaven na tzv. REST architektuře, pro komunikaci tedy využívá protokol HTTP, tj. stejný protokol, který používají webové prohlížeče a webové servery. To umožňuje snadný přístup k datům a komunikaci s ABRA Gen z libovolného programovacího jazyka a operačního systému. Pro komunikaci s API stačí dokonce i běžný webový prohlížeč.

Součástí řešení Web API systému ABRA Gen je implementace standardu Swagger (OpenAPI). Aplikace, weby a další IT nástroje tak vzájemně rozpoznají své možnosti, aniž by bylo potřeba vstupovat do zdrojového kódu. Data jsou díky API dostupná ve formátu JSON – aktuálně nejpoužívanějším formátu pro výměnu dat.

HTTP protokol funguje na principu požadavku a odpovědi. Klient (například webový prohlížeč) pošle požadavek webovému serveru (tedy API serveru), ten ho zpracuje a podle zátěže si vybere jeden z dostupných tzv. worker procesů. Worker obstará vykonání požadavku a výsledek ve formátu JSON vrátí zpátky serveru, který pak odpověď odešle klientovi. Díky možnosti rozložení zátěže na více serverů přináší toto řešení širokou škálovatelnost a vysokou dostupnost.