Related links
Sales & Asset management
Sales related services
Description of a part of the AM module - sales partFI - Finance Management
Framework Core functionality
- AyMINE Framework Server
- frmFrm – provided functionality
- System Rights
- System messaging
- AyMINE Business – Price calculation
- Strings and translations
- Export collection of objects
- AyMINE Framework management FAQ
- The AyMINE licence model
- AyMINE On-premise
- System events
- Mutli-client architecture
- Import collection of objects
- User sessions
- Default server methods
- Client-defined object attributes
- Common Libraries
Module - support for management
Libraries & Lincences
Mobile & Web Application
- Runtime debugging
- System console
- AyMINE Application
- In-line table edit support
- Object scripting API – object lang
- Application object structure
- Multilingual support
- View of a single object – detail
- Is using EVAL / feval method risky?
- Included library – String operations
- Cliplink
- Object API – object <g>
- API – Data object
- Object scripting API – object User
- Object view definition
- Framework support for Drag & Drop
- Common libraries
- Multiple-object update implementation
- fClip & fCliplist
- Offline persistent objects
- Mobile application
HR - Human Resources
System Management (part of framework)
Task, Project, Quality
Task & Task pattern
CMS - Content Management & Web API services
Front-End Scripting
Middleware - efektivní řízení
AyMINE využívá efektivního interního řízení zpráv pro synchronní i asynchronní komunikaci. Každý modul vystavuje poskytovatele služeb i zpracovatele. Součástí administrace systému je dohled nad událostmi, které jsou zpracovávány.
Integrace modulu
Každý modul systému je do middleware integrován prostřednictvím instalace. V rámci definice modulu jsou popsány události, které modul využívá i které publikuje. Při instalaci modulu jsou tyto informace zařazení do middlware, který je využívá.
Instalaci modulu je možné spouštět jakkoli opakovaně, takže není problém nastavení kdykoli změnit.
Publikace služeb
Služby modulů jsou přes middleware dostupné přes vystavené služby. Modul služby vystavuje tak, že poskytne zpracovatele událostí (EventHandler). Definice jednoho zpracovatele z modulu am vypadá takto
"eventHandlers":[
{
"event":"am.amProduct.generateAIRedData",
"icon":"internal",
"desc":"Description of the pro provided service",
"urlDoc": "Link to the module-related documentation",
"a":"server.amProduct.generateAIForMsgParsing"
},
}
Ikona a popis slouží pro administraci, standardně jsou anglicky. Podrobnější dokumentace služby musí být součástí dokumentace modulu, do middleware se neukládá.
Přihlášení odběratele události
Odběratel události je Funkce systému, která využívá poskytnutou událost. Odběratel může událost volat a díky registraci
- Je přehled, jak jsou které služby využívány
- Na úrovni middleware (v rámci rozhraní administrace) je možné kontrolovat, zda smí událost volat
- Je přehled o závislostech modulů, takže je jednodušší jejich správa
Příklad registrace odběratele:
"am.amProduct.generateAIRedData":{
"desc":"Request to generate AI data for product recognition",
"requestType":"asynchronous",
"answerRequested":false,
"type":"userActivated",
"scope":"internal"
},
Ukázka registruje asynchronně volanou službu - požadavek na zpracování. Popis dále uvádí, že volající nečeká žádnou odpověď a služba je volána asynchronně a nemá stanovenu prioritu.
Volání událostí
Událost může zavolat libovolná funkce, která byla předtím registrována. Příklad volání výše popsané funkce:
EventManager::raise(
'am.amProduct.generateAIRedData', // název události
[], // parametry volání
new DateTime(), // datum, kdy má být událost aktivována
null, // uživatelský účet
$cid // klient (povinné)
);
Časové události
Sytém automaticky a pravidelně generuje řadu časových událostí
- Každých několik minut
- Každou hodinu
- Každý půlden
- Začátek / konec pracovní dne
- Pro noční skripty
Moduly nemají důvod implementovat vlastní mechanismus časového volání. Stačí se "napojit" na některou ze systémových časových událostí.
Administrace middleware
Systémový správce má přehled, jaké události jsou zpracovávány.
Konzole pro sledování událostí
Přehled zpracovatelů událostí
Hodí se vědět
AyMINE není real-time systém
Middleware a zpracování událostí je efektivním řešení pro podnikové aplikace. Implementovaný mechanismus není navržen pro Real-Time systémy ani pro on-line hry, které vyžadují okamžité reakce. Naopak pro podnikové aplikace a systémy, které je důležitá nejenom spolehlivost, ale i ekonomické náklady na provoz systému, je systém řízení událostí ideální volbou.