INFORMATIKA 11-osios Lietuvos jaunųjų mokslininkų konferencijos Mokslas Lietuvos ateitis, įvykusios Vilniuje 2008 m. balandžio 9 11 d., straipsnių rinkinys VERSLO VALDYMO SISTEMOS MICROSOFT DYNAMICS AX ARCHITEKTŪRA Aidas Truškauskas, Arūnas Milašius Vilniaus Gedimino technikos universitetas, aidietis@hotmail.com Anotacija. Nagrinėjama verslo valdymo sistemos Microsoft Dynamics AX Architektūra. Aptariama jos trijų pakopų architektūra, sistemos programavimo elementai (InteliMorph, MorphX, X++), unikali sistemos sluoksnių architektūra bei sistemos saugumo struktūra. Įvadas Microsoft Dynamics AX (anksčiau Microsoft Axapta) tai verslo valdymo sistema (angl. Enterprice Resource Planning), skirta vidutinio dydžio ir stambioms įmonėms, kuriose su sistema dirbtų 15 ir daugiau vartotojų (Microsoft...2008). Ji susijusi su gamybos, distribucijos, tiekėjų, pardavimų, finansų, klientų, darbuotojų, kitų verslo išteklių ir funkcijų valdymu. Microsoft Dynamics AX sprendimas yra lankstus, lengvai jungiamas su kitomis sistemomis, turi išplėtotą programavimo įrankių rinkinį, pasižymi pažangiu funkcionalumu. Straipsnyje aptarsime unikalią Microsoft Dynamics AX architektūrą (Produktai...2008). Microsoft Dynamics AX programavimo elementai Microsoft Dynamics AX objektų serveris Microsoft Dynamics AX objektų serveris (AOS) yra antra iš trijų Microsoft Dynamics AX architektūros pakopų. Trijų pakopų aplinka sudaryta iš (1 pav.): 363
pirma pakopa klientas; antra pakopa AOS (angl. Application Object Server); trečia pakopa duomenų bazės serveris. Pagal trijų pakopų sprendimą duomenų bazė veikia trečioje pakopoje. AOS sprendžia verslo logiką antroje pakopoje. Klientas susijęs su pirma pakopa ir atlieka vartotojo sąsajos ir būtiną programos logikos funkcijas. Paveikslas iliustruoja sąveiką tarp šių trijų pakopų (1 pav.): 1 pav. Trijų Microsoft Dynamics AX pakopų sąveikos diagrama AOS architektūros privalumas: plečiantis verslui ir daugėjant Microsft Dynamics AX vartotojų, galima praplėsti Microsoft Dynamics AX talpą, pridedant papildomą AOS antroje pakopoje. Papildomas serveris suteikia balansavimo galimybę ir padidina sistemos patikimumą. 364
InteliMorph. Tai yra technologija, kuri kontroliuoja Microsoft Dynamics AX vartotojo sąsają, t.y., kaip aplikacijos funkcionalumas yra pateikiamas vartotojui. Tas pats funkcionalumas gali būti vaizduojamos ant kelių platformų ar įrenginių, kurie naudoja tą patį kodą, pvz., tinkle ar per mobiliuosius įrenginius. InteliMorph kontroliuoja vartotojo sąsajos išdėstymą ir palengvina formų, ataskaitų bei meniu išdėstymą. MorphX yra integruota programavimo aplinka ir naudojama programuoti bei tinkinti Windows ir tinklines sąsajas. Programavimo aplinka suteikia tokias funkcijas: aplikacijos dizainas, redagavimas, kompiliavimas, klaidų taisymas ir kitas. X++. Tai yra objektiškai orientuota programavimo kalba. Ji yra optimizuota verslo objektams kurti ir modifikuoti. Kalba yra paprasta ir joje integruota SQL sintaksė. X++ taip pat glaudžiai integruota su MorphX įrankiais, tokiais kaip formų ar ataskaitų generatoriumi. X++ buvo sukurta naudojant C++. C++ branduolio (kernel) kodas yra nepasiekiamas. Visas X++ yra atviras kodas. Programuotojas negali paslėpti X++ kodo ir visas standartinio paketo X++ kodas yra atviras. Tai yra didelis privalumas programuotojams. Aplikacijos objektų sluoksniai. Metodai taikomi Microsoft Dynamics AX tam, kad būtų atskirti ir kontroliuojami atnaujinimai bei modifikacijos, padarytos aplikacijoje, yra žinomi kaip sluoksniavimas. Sluoksniai yra lygių hierarchija aplikacijos kode. Sluoksniai užtikrina, kad programuotojas galėtų daryti pakeitimus ir priedus, nepaveikdamas aplikacijos objektų žemesniame sluoksnyje, nei jis programuoja. Kada yra modifikuojamas objektas viename sluoksnyje, modifikuotas objektas perdengia tą objektą žemesniame sluoksnyje. Sluoksniavimas yra vienas iš patraukliausių Microsoft Dynamics AX programavimo architektūros bruožų. Sluoksnių hierarchija pavaizduota 2 pav. Sluoksnių architektūros privalumai: standartinis aplikacijos kodas niekada neperdengiamas; kai trinamas objektas, jis pašalinamas tiktai darbiniame sluoksnyje. Kaskart atidarius objektą, sistema 365
automatiškai ieško ir naudoja objektus, pirmiausia reikalingus aukščiausiame sluoksnyje. Kiekvienas sluoksnis yra išsaugomas atskiroje rinkmenoje su plėtiniu.aod. Sluoksnių architektūra yra sukurta skirtingoms Microsoft Dynamics AX programuotojų grupėms. Sluoksniai yra pritaikyti skirtingoms Microsoft Dynamics AX programuotojų grupėms. Pridėti ir modifikuoti aplikacijos objektus yra suinteresuotos trys grupės: Microsoft Business Solution programuotojai, kurie kuria standartinę aplikaciją; verslo partneriai ir programuotojai, kurie platina ir tobulina Microsoft Dynamics AX; Microsoft Dynamics AX vartotojai (įmonės). 2 pav. Sluoksnių hierarchija Saugumo struktūra. Keturi elementai kontroliuoja Microsoft Dynamics AX saugumą: licencijos kodai susiję su kompanijos įsigytais moduliais. Šie licenzijos kodai leidžia visai kompanijai pasiekti įsigytas Microsoft Dynamics AX sritis; 366
konfigūracijos raktai leidžia veikti aplikacijos savybėms ir atjungti aplikacijos savybes. Jie kontroliuoja visos kompanijos prieigą; saugumo raktai yra priskirti vartotojų grupėms ir kontroliuoja priėjimą prie Microsoft Dynamics AX elementų vartotojų grupės; įrašų lygio saugumo funkcija kontroliuoja priėjimą prie įrašų lentelėse. Tai reiškia, kad skirtingos vartotojų grupės gali turėti skirtingą prieigą prie skirtingų duomenų toje pačioje lentelėje. Išvados 1. Microsoft Dyanamics AX yra verslo valdymo sistema, skirta vidutinėms ir didelėms įmonėms. 2. Microsoft Dyanamics AX trijų pakopų architektūra suteikia galimybę, augant kompanijai, didinti vartotojų skaičių ir padidinti sistemos stabilumą. 3. Sistema turi naudingas programavimo ir tinkinimo priemones: InteliMorph, MorphX, objektiškai orientuotą programavimo kalbą X++. 4. Unikali sistemos sluoksnių sistema palengvina programuotojų darbą. 5. Sistemos saugumą užtikrina 4 elementai: licencijos kodai, konfigūracijos raktai, saugumo raktai ir įrašų lygio saugumas. Literatūra Microsoft Dynamics AX [interaktyvus] 2008 [žiūrėta 2008 m. balandžio 2 d.]. Prieiga per internetą: <http://sistemos.sonex.lt/lt/valdymosprendimai/verslo-valdymas/axapta/>. Microsoft Dynamics AX 4.0 Course 46231: Development I training. 2006. Seattle. Produktai: Microsoft Dynamics AX [interaktyvus] 2008 [žiūrėta 2008 m. balandžio 2 d.]. Prieiga per internetą: <http://www.alna.lt/abs/produktai/microsoft_axapta/>. 367
Andreasen S., 2006. MORPHX IT An introduction to Axapta X++ and the MorphX Development Suite. Denmark. ERP S MICROSOFT DYNAMICS AX ARCHITECTURE A. Truškauskas, A. Milašius Summary The study deals with the architecture behind Microsoft Dynamics Ax. You have been introduced to important terms regarding element of Microsoft Dynamics AX Development. The basic security architecture that includes License codes, configuration keys, security keys and user groups, has also been discussed in this study. 368