Bejegyzés

Közvetlen adatcsere a felhöben: Cloud Fx()

Cégünk elkötelezett amellett, hogy a felhő és SAAS technológiákat magasabb szinteken is kihasználja. Symbol Sky felhőt használó ügyfeleink számára elérhetővé tettük a Cloud Fx() szolgáltatást, amellyel közvetlenül cserélhetnek adatot vevőikkel, partnereikkel.

Nem csak 5GB ingyen tárhely

A felhő és vele együtt a SAAS szolgáltatások nem azt jelentik, hogy 5/10GB tárhelyet kapunk fájljaink tárolásához és programot futtathatunk távoli asztalon. Nem merül ki abban a felhő, hogy webes felületen be tudunk lépni és bizonyos adatokat meg tudunk jeleníteni egy böngészőben.

 

Távoli adatcsere a partnerekkel

A Software as a Service működés sokkal inkább azt jelenti, hogy a szoftver és az általa tárolt adatok egy részét elérhetővé teszem mások számára, esetleg mindenki számára. Ezek lehetnek árlisták, általam forgalmazott termékek leírásai, készletinformációk. Könyvelési vagy HR információk (persze csak a könyvelőnek!).

 

Interaktív tevékenységek is

A felhő által publikált adatok mellett van egy másik fontos szegmens is, ez pedig a interakció. A felhő szolgáltatások nem csak adatkinyerésre használhatóak, azokkal műveletek is végezhetőek. Ez lehet távoli rendelés rögzítés, rendelésinformáció módosítás, távoli gyártó egység irányítása és vezérlése vagy akár beléptető rendszer naplózás több telephelyen.

Amennyiben felkeltette érdeklődését a Cloud Fx() szolgáltatás, bővebb információt a Symbol Cloud webhelyen talál.

 

SaaS – Akkor ez most a Symbol Ügyvitel API?

SaaS működésünk megjelenése előtt számos céggel beszélgettünk róla, hogy ez a működés, akkor most mennyire van kész, ez most akkor gyakorlatilag egy API? A válasz az, hogy ez egy DynamicAPI. Teljes API-t nem lehet csinálni, de bármely része percek/órák alatt implementálható.

Mi is az API?

Az API egy függvénytár, amely egy rendszer kívülről elérhető funkcióit engedi megszólítani. Kis vagy közepes funkcionalitás esetén az API annyi megszólítható “dolgot” tartalmaz, amennyit két kezünkön meg tudunk számolni. Példaképpen említhetjük a POP3 vagy IMAP parancsokat, amelyek a levelek letöltését, üzenettörzs letöltését, üzenetek törlését valósítja meg. Nem is kell többet.

Ugyanilyen a Google Docs API, amely dokumentumok tárolását szolgálja. A műveleteknél nem is vágyunk többre, mint dokumentum feltöltése, letöltése, törlése, áthelyezése és egy gyors keresőszolgáltatás a dokumentumok tartalmában (ez utóbbi nem is biztos, hogy része a rendszernek, de ha már Google, akkor talán igen)

SaaS

Egy összetett (nem bonyolult, hanem komplex) rendszer esetében egy teljes API legalább annyi műveletet tartalmaz, mint ahány főmenüpontja van, a paraméterek száma is több tízre tehető. Ez nyilvánvalóan nem valósítható meg, pontosabban olyan mértékű ráfordítást igényel, amely nem térül meg.

Ehelyett a dolog méregfogát úgy húztuk ki, hogy egy önálló programozási platformmal lehetővé tettük bármilyen API megírását. És mindezt ingyenes eszközökkel. Egy SaaS kompatibilis SyX megírása ahhoz hasonlítható, mintha a Google Docs adatbázisához hozzáférünk (saját adataimat nem rejtsék el előlem) és saját lekérdezéseket írhatunk. A lekérdezéseket egy szabványos hozzáférési rétegen (HTTP) kivezetjük, hogy az azt felhasználó kollégáknak ne kelljen valami újat megtanulniuk.

Nézzünk erre egy példát!

Szükségünk lenne egy termékhez tartozó készletinformációra. Ezt egy külső program (amely a weboldalt frissíti) fogja felhasználni. Programozási nyelve lehet PHP, Delphi, C++ vagy C# is. Triviális megoldás, ha az adatbázisból közvetlenül lekérdezzük ezeket az információkat. (Ügyfélszolgálatunk támogatást nyújt a szükséges adatok helyének megismerésében). Ez a megoldás azonban közvetlen adatbázis kapcsolat igényel, amely közepes méretű cégeknél nem megoldható. Emellett külön kell azzal foglalkozni, hogy a fent jelölt programozási nyelvek miként kapcsolódnak az adatbázishoz. Helyette valósítsuk meg a dolgot két lépésben!

1. lépés: SaaS funkció létrehozása.

Hozzunk létre ingyenes fejlesztőeszközzel egy SyX-et, amely SaaS működésre alkalmas. A fenti művelet kiszolgálására készítsünk egy metódust, amely egy termékkódot vár és egy opcionális dátum paraméterrel hívható meg. A metódus “magja” kb. 8-12 programsor segítségével a beérkezett kérést ki tudja szolgálni a megfelelő táblákból történő lekérdezéssel. Végeredményként visszaadja az összes raktárt és benne a készletet, ahol a termék eddig megfordult. Fontos megjegyezni, hogy a bemenő URL feldolgozását nem nekünk kell elvégezni, sőt az eredmény formátumát sem nekünk kell meghatározni, azokat a SaaS definiálja (XML lesz).

2. lépés: SaaS funkció hívása.

Következő lépésben a Symbol Ügyvitel által használt webszervertől le tudjuk kérni a http://localhost/GetWarehouseBalance meghívásával a raktárkészlet információkat. Az URL meghívása szinte programozási nyelv függetlenül megtehető, minden nyelv tartalmaz weboldalról való letöltést megvalósító funkciókat. A visszaadott érték lehet XML formátumú, esetleg JSON, sőt teljes HTML weboldal is, ha az URL-t böngészőn keresztül kívánjuk elérni.

A fenti példán keresztül jól látható, hogy miért nem egy teljes API-t valósítottunk meg, mennyire szerteágazó lenne az ügyfelek minden igényét egy API-ban kielégíteni. Helyette azt a megoldást választottuk, hogy szabványos platformot hoztunk létre, amelyben mindenki a saját API-ját elkészítheti a saját adatai feletti rétegben.