1. Bevezető
A alkalmazás lehetővé teszi, hogy egy tetszőleges adatbázis struktúra és a Kulcs-Szinkron modul között logikai összerendelést hozzon létre,
mely segítségével a szinkronizáció megvalósítható. A szoftver a
Kulcs-soft tudásbázis leírás alapján készült, az ott leírt (v4-es XSD) struktúrákat használja fel.
A szoftver Wordpress alá modulként is telepíthető, de bármilyen egyedi PHP5+ alapú weboldalhoz is illeszthető. A szoftver 30
napig trial aktivitási kulccsal használható, utána normál aktíváló kulccsal lehet a működését meghosszabbítani a 'Beállítások' menüpont alatt. Aktíváló kód különböző időtartamokra
(1 vagy 3 hónap) a xdevops.hu oldalon igényelhetőek jelenleg ingyenesen.
A Kulcs-Szinkron modulhoz való alkalmazásfejlesztés, tesztelés és bevezetés költsége/ideje akár 90%-al csökkenthető, mert egy komplett
alkalmazás fejlesztés helyett pusztán relatíve egyszerű MySQL tárolt eljárásokat kell írni. Illetve a minden esetben szükséges adatbázis felmérést kell elvégezni.
2. Támogatott Kulcs-Szinkron modul műveletek
Összesen 4 tipusú művelet támogatott. Ezzel a 4 típusú művelettel a Kulcs-soft ügyvitei szoftver és bármilyen webportál között raktár szinkronzizáció
megvalósítható. Szükség esetén - technikai felhasználót használva - akár a 'Vevői rendelés letöltés' és 'Termék feltöltés' megvalósítsával is
megvalósítható a raktár szinkronizáció. Tehát akár 2 művelet implementálásával is megoldható a raktár szinkronizácó.
A támogatott feltöltések: 1) Termék feltöltés, 2) Ügyfél feltöltés.
A támogatott letöltések : 3) Vevői rendelés letöltés és 4) Ügyfél letöltés.
3. A Dbsync-Kulcs bevezetése
A modul bármikor, minden előfeltétel nélkül illesztehtő és telepíthető bármilyen webáruházhoz. Nincs szükség sem ősfeltöltésre sem semmilyen előzetes
előkészítésre. A szoftver akár termékről termékre is bevezethető, pusztán a webáruházban lévő termék ottani (webáruházas) egyedi azonosítóját kell
megadni a kulcs-soft ügyviteli szoftverben, amely alapján a termék összerendelés meghatározható. Ha már van ilyen, az összerendelést lehetővé tevő
azonosító, úgy a raktár szinkronizáció azonnal megvalósítható.
4. Működési alapok
Az alkalmzás egy olyan általános keretrendszert biztosít, mely segítségével a folyamat bizonyos pontjain MySQL tárolt eljárásokat hív meg.
Ezen tárolt eljárásokat kell megírni a szinkronizációhoz, alapból üresek, nem csinálnak semmit. A tárolt eljárásokat a Dbsync-Kulcs alkalmazás
felületén kereszül is fel lehet tölteni a MySQL adatbázisba.
Ezen eljárások segítségével bármilyen adatbázis struktúra és a Kulcs-soft által feltöltött XML struktúra között összerendelés hozható létre.
A feltöltési folyamatábra az alábbi képen látható.
Feltöltés (Kulcs-soft XML → Webáruház) esetén a kapott XML tételek betöltődnek az alkalmazás által létrehozott másodlagos adatbázis struktúrába.
A másodlagos adatbázis táblák teljesen függetlenek a webáruház eredeti (elsődleges) adatbázis tábláitól, így az azokon (másodlagos táblákon)
történő műveletek arra nincsenek hatással, akár törölhetőek is, ha az Dbsync-Kulcs alkalmazásra nincs szükség.
A tárol eljárások már tisztán az adatbázisban lévő táblákon dolgoznak, eztért itt nagy körültekintésre van szükség. Gyakorlatilag a tárol eljárások
kötik össze, tartják szinkronban a másodlagos táblákat az webáruház eredeti tábláival. Ez a megoldás maximális rugalmassagáot biztosít a szinkronizációra.
A letöltési folyamat nagyon hasonló.
Az ügyviteli szoftver felől érkező letöltési kérés beérkezése után meghívódik a (d1) MySQL tárol eljárs, melynek az a feladata, hogy összegyűjtse azokat
az azonosítókat, melyekkel később egyesével meg lesz hívva a folymat következő (d2) MySQL tárolt eljárása. Utóbbi eljárás feladata, hogy az eredeti adatbázis táblákban
módosult vagy új adatokat szinkronizálja a Dbsync-Kulcs alkalmazás másodlagos tábláival. Az ügyviteli szoftver felé már másodlagos táblákból összeállított
XML fájl lesz átküdve.
Lényeges elv, hogy a Dbsync-Kulcs alkalmazás közvetlenül soha nem írja a webáruház eredti tábláit és nem is olvas belőlük. Minden műveletet MySQL
tárol eljárásokon kereszül hajt végre. Ez egyrészt maximális rugalmasságot biztosít az illesztésre, másfelől maximális biztonságot ad, hiszen nem tudja
elrontani az eredeti adatokat. Az eredeti adatokon kizárólag a tárolt eljárásokat megíró személy tud műveleteket végrehajtani a tárolt eljárás segítségével.
5. Telepítés Wordpress (WP) modulként: ZIP fájlt installálni az 'add plugin' alatt lehet, egyszerűen kiválasztjuk a ZIP fájt a WP plugin telepítő segítségével.
Wordpress alól nem szükséges semmilyen egyéb adatbázis beállítás, mert az alkalmazás a WP konfig fájlokból kiolvassa ami kell neki (adatbázis hozzáférési
paraméterek).
Nem WP modulként (Natív használat): A ZIP fájl kitömörítése után a teljes könyvtárszerkezetet másolja fel a wepáruház szerverére, például hozzon létre a root
könyvtárban egy 'dbsync-kulcs' mappát és ide másolja be. Ekkor az alkalmazás root könyvtárában (/dbsync-kulcs) a config.db.php fájlban lehet beállítani
az adatbázis eléréshez szükséges paramétereket.
define('DB_NAME', 'db_name');
define('DB_USER', 'db_user');
define('DB_PASSWORD', 'db_password');
define('DB_HOST', 'localhost');
6. Első belépés
Akár Wordpress (WP) modulként telepítettük az alkalmazást akár nem (natív telepítés) az első lépés, hogy belépünk az adminisztrációs felületbe.
WP esetén sikeres telepítés után a modul a 'Tools' menü alatt 'KulcsSync' nével lesz elérhető. Natív telepítés után az alkalmazás gyökérkönyvtárában
a settings.php-t kell meghívni. Az első meghívást követően bejön az admin felület, és ekkor az alábbi képernyő látható. Az alkalmazás megvizsgálja,
hogy a másodlagos adatbázis táblák léteznek-e, ha nem akkor azokat automatikusan létrehozza. Mind a 17 táblának sikeresen létre kell jönnie, amíg ez
nem történik meg addig nem lehet továbblépni.
Piros színnel láthatóak azok a lépések, amelyeket végre kell hajtania, hogy a szoftver megfelelően működjön. A beállítások pontos leírást a következő fejezet
tartalmazza, illetve a kulcs-soft tudásbázisban érhetőek el részben.
7. Admin felület, beállítások
A Beállítások alatt el kell végezni a szükséges adatok megadását az ott leírtak szerint. Az alkalazás működése erről a felületről szabályozható.
Ezeket az után is be lehet állítani vagy módosítani, ha a Kulcs-soft szinkronizációs modul aktiválva lett, az ott megadott paraméterekkel. Az
alapértékek (ahol lehetséges) a Kulcs-soft dokumentációiban megadott értékek, de van lehetőség módosítani őket.
A felületen elérhető beállításokkal rendkívül rugalmasan lehet az alkamlazást illeszteni a Kulcs-Szinkron modulhoz. Szinte minden paraméterhezhető,
így az esetleges későbbi változásokat is egyszerűen le lehet követni, illetve a jelenlgei verzióhoz tökéletesen testre lehet szabni bármilyen
fejlesztés nélkül. A beállítások felületet az alábbi képek mutatják.
Aktiváló kód: Az aktiváló kódot ide kell bemásolni és az "Aktiváló kód frissítése" gombbal feltölteni. Ekkor a megjeleni az aktiváló kódban
beállított domain és lejárati dátum. Ettől a pillanattól kezdve a rendszer használatra kész.
Authentikációhoz tartozó paraméter neve: A Kulcs-soft ügyviteli szoftverben megatott authentikációs paraméter neve.
Authentikációhoz tartozó paraméter értéke: A Kulcs-soft ügyviteli szoftverben megatott authentikációs paraméter értéke.
*A Kulcs-soft tudásbázis erről ezt írja: A hívások közbeni autentikációra a Kulcs-Ügyvitel program által meghívott URL-n keresztül van lehetőség.
Olyan mód, hogy a folyamatokhoz tartozó url-k egy tetszőleges előre meghatározott paraméterrel együtt lesznek bekötve a kulcs-szinkron rendszerbe.
Authentikáció típusa:A Dbsync-kulcs alkalmazás szükség esetén akár a HTTP kérés header paramétereiből is képes kiolvasni az
authentikációs adatokat.
XML feltöltésekor a fájlnév: A Kulcs-soft ügyviteli szoftver az XML fájlokat egy adott néven tölti fel, ez a dokumentáció szerint
'file'. A feltöltéskor használt fájlnév itt módosítható.
A XML letöltés limit értéke (letöltés/db): Mindenképpen érdemes beállítani egy 50 körüli értéket. 1-nél nem lehet kisebb és 500-nál nem lehet nagyobb.
Confirm folymat paramétere:A Kulcs-soft ügyviteli szoftverben az Confirm folymat ezzel a paraméter névvel küldi az adatokat. A dokumentáció
alapján az érték 'data'.
Technikai felhasználó: Az Ügyfél szinkronizáció sok esetben nem igazán megoldható, mert a Kulcs-soft XML adatszerkezet olyan mértékben nem
illeszthető a webáruház adatbázis szerkezetéhez. Ám a vevői rendelések szinkronizációjához szükség van bizonyos ügyfél adatokra. Erre ad megoldást a
technikai felhasználó létrehozása. Használata esetén minden rendelés vagy bizonyos rendelések ez alatt az ügyfél alatt jelennek meg, cserébe a raktár
szinkronizáció könnyen kivitelezhető. * Ha csak az ismeretlen ügyfelekre kívánja alkalmazni, akkor meg kell valósítania az Ügyfél szinkronizációt is,
különben nem tud létrejönni ügyfél szinkronizáció a Kulcs-soft és webáruház ügyfelek között, így minden ügyfél ismerelen marad továbbra is!
Összerendelt termékek csak rendelésben: A vevői rendelés letöltésénél csak azok a termékek jelenjenek meg, ahol a webáruház és a
kulcs-soft ügyviteli szoftver között már megtörtént az összerendelés, így a temék beazonsítható a fogadó oldalon is.
Ügyfél letöltés minimum dátum: A tárol eljárásnak kerül átadásra paraméterként, szabadon felhasználható.
Vevő rendelés letöltés minimum dátum: A tárol eljárásnak kerül átadásra paraméterként, szabadon felhasználható.
8. Tesztelés megkezdése
A tesztelés megkezdéséhez szükség lesz már az Kulcs-soft (KS) ügyviteli szoftver modul aktiválásához. A KS
modulban megadott authentikációs paramétereket ide is át kell vezetni, ezt a Beállításoknál
megtehető.
1) A tesztelés megkezdése előtt, ahogy a KS dokumentációban is külön kiemelik az
adatbázisokról legyen biztonsági mentés.
2) Először 1 termék legyen szinkronizálva. A szinkronizáció után manuálisan ellenőrizni kell,
hogy sikeres volt-e a teszt. Ha igen, akkor még legalább 2 termék tesztjét célszerű manuálisan
is ellenőrizni, mielőtt az összes termék szinkronizációra kerül.
3) A vevői megrendelést is tesztelni kell. Tehát a weblapról egy valós rendelést csinálni és
manuálisan ellenőrizni a folyamatot. Itt is javasolt legalább 2-3 teszt teljes manuális
ellenőrzése.
9. Termék feltöltés tárolt eljárás mapping ellenőrzés
A termék feltöltés esetén a program megpróbálja összerendelni (ks_termek_fel_f) a Kulcs-soft (KS) terméket a
Webportál termékkel. A KS leírás szerint a termékkód az XML itemnumber mezőjében található, például a
Wordpress pedig az SKU számot használja erre, így ez került beállításra az ingyenesen letölthető tárolt eljárásokban. Ha nem ezt
használja a weboldalon, akkor a MySQL tárolt eljárást módosítni kell.
10. Logolás
A program root-ja alatt (pl /bsync-kulcs) a logconfig.xml fájlban lehet szabályozni a logolást. Alapbeállítsá szerint a
Webportál fájlrendszerében a /ks_log/file.log alatt logol. 10 darab 1Mbyte-os logot tárol.
A logolás további beállítása a 'Beállítások' alatt lehetséges, itt át lehet kapcsolni DEBUG szintre egy-egy modult. De ezeket
kizárólag tesztelés alatt állítsug DEBUG-ba, mert hívásonként több száz sor log fog keletkezni.