Előző cikkünk a UiPath megoldásáról szólt, miután korábban általánosságban bemutattuk az RPA szoftverek jellemzőit. Most az RPA piac másik vezető megoldását, az Automation Anywhere-t (AA) mutatjuk be. Az AA-t 2003-ban alapította Kaliforniában 4 indiai származású szoftvermérnök. Elsősorban Amerikában és ázsiai országokban piacvezetők, de mindenhol erősen jelen vannak. Évek óta 100% feletti növekedést produkálnak és több mint 500 millió dollár tőket kaptak nagynevű nemzetközi befektetőktől, mint a Goldman Sachs vagy a Softbank.
Az AA fő erőssége a nagyvállalati felügyelet nélküli automatizáció és a kognitív funkciók, de az utóbbi időben minden piaci szegmens felé nyitottak pl. a felügyelt automatizáció támogatásának erősítésével és az ingyenes kisvállalati verzióval. Az AA megoldása gyorsan fejlődik, folyamatosan szállítják az új funkciókat és az új verziókat.
Az AA Enterprise megoldás 3 részből áll:
- Bot készítő (Bot Creator) – egy Windows alkalmazás, ami a botok készítésére szolgál.
- Kontroll szoba (Control Room) – egy web szerver, mely a bot készítő által feltöltött botok vezérlésére szolgál. Itt lehet kiosztani, hogy a bot mikor és melyik kliens gépen fusson, mely bot futtató által. Az AA nagy hangsúlyt fektet a központi vezérlésre, hogy egy helyről lehessen egy nagyvállat összes szoftverrobotját vezérelni és felügyelni. Itt lehet az ehhez szükséges részletes felhasználói jogosultságokat beállítani. A kontroll szoba elvégzi a botok verziókövetését is. Beállíthatók a szükséges licenszek: fejlesztői licensz a botok készítésére és futtatására, illetve futtatói licensz csak a végrehajtáshoz.
A kontroll szoba képes a botok futásáról valós idejű analitikát készíteni (Operational and Business Analytics), ami botok alapadatairól készít vizualizációkat. Pl. egy szállítói számlarögzítő botról készíthetünk ábrákat, amik a napi számlaösszeget, vagy pl. a számlák száma szerint legelső 10 szállítót jelenítik meg. A Bot Insights analitika pedig a botok futásának minden adatát tartalmazza.
- Bot futtató (Bot Runner) - szintén egy Windows alkalmazás, mely a botok futtatására szolgál. Csak a kontroll szobán keresztül vezérelhető, közvetlenül nem.
Összefoglalva először elkészítjük a botot a bot készítőben és feltöltjük a kontroll szobába. Ott egy bot futtatóhoz rendeljük, majd ütemezetten futtatjuk.
A Bot készítőben többféle módon készíthetjük el a botunkat. Legegyszerűbb egy felvevő (Recorder) használata, mely segítségével a feladat normál módon való végrehajtása során a felvevő elkészíti a végrehajtáshoz szükséges botot. Ha a feladat pl. egy szállítói számla rögzítése a pénzügyi rendszerben, akkor ezt a felvevő bekapcsolása után a szokott módon végrehajtjuk, és a felvevő szépen rögzíti az összes lépést (belépés, menü megnyitása, mezők kitöltése, mentés gomb megnyomása stb.) újra végrehajtható módon. Felvevőből többféle is van, a Smart felvevő értelmezi a felhasználói felület objektumait, melyekre egyértelmű hivatkozást készít. Így a bot a végrehajtás során 100% biztonsággal tudja az adott elemeket azonosítani és felhasználni. A Web felvevő hasonlóképpen jár el a weboldalak DOM objektum modelljét használva. A Screen felvevő ezzel szemben csak az objektumok koordinátái alapján dolgozik, ami kevésbé megbízható, de pl. Citrix, vagy virtualizált környezetek esetén csak ez használható.
Botot készíthetünk felvevő nélkül is, a bot készítőben 450+ akció áll rendelkezésünkre. Ezek közül csak néhányat emelnék ki:
- active directory-s felhasználó kezelés
- alkalmazások meghívása
- adatbázis kapcsolatok kezelése
- email kezelés (olvasás, írás stb)
- Excel kezelés
- fájlkezelés
- FTP/SFTP parancsok
- PDF integráció
- programozási struktúrák kezelése: IF/ELSE, ciklusok, debug, üzenetek, egérkezelés, felhasználói interakció kezelése, szövegparancsok, várakozások, ablakkezelés, változókezelés
Lehetőség van úgynevezett MetaBotok készítésére. Ezek meghívható programrészletek, melyek beépíthetők a bot készítő aktivitásai közé. Pl. a belépés SAP rendszerbe megírható egy MetaBotként, és akkor a további botok építésekor ez a lépés már készen felhasználható. A Metabotok képesek Windows DLL függvények meghívására is, így szinte minden megoldható, de persze ehhez már programozni kell, amire a bot készítő alapakciói használata esetén nincs szükség.
Nézzük egy példát, készítsük el az AA használatával is a már két hete az UiPath segítségével is elkészített kis automatizációt, mely a wikipédiáról lementi a Föld országait és népességüket egy fájlba. Első lépésben nyitunk egy web recorder-t, aminek megadjuk az URL címet, ahol a tábla elérhető.
A teljesen betöltődött böngésző ablakának jobb alsó sarkában lévő eszköztárból az Extract Table funkciót használjuk.
Megadjuk a fájl nevét, amibe a táblát menteni akarjuk, majd Finish gomb.
A kész bot így néz ki:
Látható, hogy a UiPath folyamatábrás megoldásával szemben az AA egy tömörebb, szkriptszerű megjelenítést alkalmaz.
Ha komolyabb automatizációkra van szükségünk, akkor érdemes az AA Bot áruházában körülnézni. Ez ugyanis kész komplex megoldásokat tartalmaz, melyet az AA vagy partnerei készítettek, de melyek minőségét az AA ellenőrzi és szavatolja. Itt a legtöbb ismert vállalatirányítási szoftverhez letölthetők a legfontosabb botok. Pl. Oracle E-Business Suite-hoz: szállító létrehozás, kifizetés, jóváírás, számla, projekt készítés, modulonkénti időszakzárás stb. Ha nem is találjuk meg egy az egyben a nekünk szükséges botot, sokat lehet tanulni az itt elérhető többszáz megoldásból.
Az AA egyik erőssége a kognitív automáció. Erre egy külön botfajtát, az ún. IQ botot hoztak létre. Az IQ Bot használható nem struktúrált, és ezért a számítógépek számára hagyományos módon nehezen feldolgozható adatok értelmezésére. Ilyen pl. a PDF vagy más képformátumban rendelkezésre álló szállítói számlák vagy megrendelések feldolgozása. A szállítók különböző kialakítású számlákat küldenek, melyekben csak az a közös, hogy bizonyos adatokat, mint pl. számlaszám, számladátum, összegek stb. mind tartalmaznak. Lássunk egy példát szállítói számlák feldolgozására IQ Bot használatával!
IQ Bot létrehozása, a Control room IQ Bot felületén
IQ Bot neve, dokumentum típusa és nyelve csak a kötelező mezők.
Itt adhatjuk meg, hogy milyen értékeket akarunk kinyerni a dokumentumokból, és azt milyen oszlopokba akarjuk menteni. Dokumentum típusának megfelelő mezők automatikusan bekerülnek ebbe a listába.
Van lehetőségünk saját mezőt létrehozni, amelyet minden dokumentum esetén a Bot megkeres, és a megadott oszlopba menti az értékét.
Create learning instance gombbal elindul az analízis, amely során az IQ Bot átnézni a fájlokat, és a korábban megadott mezőket megkeresi. Itt érvényesülnek a kognitív képességek, mivel a mezők felismerése automatikus.
Review, vagyis a felülvizsgálattal tudjuk ellenőrizni, hogy megfelelőek-e az adatok, amelyeket az IQ Bot feltérképezett. Mezőnként tudjuk ellenőrizni az adatok értékének és típusának helyességét.
Miután átnéztük az összes mezőt, nincs más dolgunk, mint elmenteni, majd “élesíteni” a Bot-ot, a Set to production gombbal.
Ezzel elkészült az IQ Bot, amit aztán beépíthető egy normál botba, ami pl. egy emailcímre érkező PDF számlákat dolgozza fel, vagy egy könyvtárban levő összes számlát beolvas. Az IQ Bot hibák esetén tanítható, vagyis a helyes megoldás megmutatása után ugyanazt a hibát már nem fogja többször elkövetni. A mi példánkban hibát okozott például az összegekben levő ezres szeparátor, ami egy üres karakter volt: 6 384. Ez nem tudta számként értelmezni a felismert üres karakter miatt. Megmutattuk, hogy ezeket az üres karaktereket az összegeknél figyelmen kívül kell hagynia, és utána már ez nem okozott problémát.
Az Automation Anywhere egy robosztus megoldást ad nagyvállalati környezetben ügyviteli folyamatok automatizálására. A teljes megoldás kipróbálásra, illetve megkötésekkel kisebb vállalatok számára letölthető. Az Automation Anywhere University ingyenes tanfolyamai segítségével néhány nap után már botokat készíthetünk.