FESA Application Server (5-Tier Design)Separation of Business Logics from GUI & Data Store
The application server makes use of Application Domain to serve every incoming client connections. When a connection is established, the main thread of the application server creates a service unit using a new Application Domain. This service unit starts in a new thread to serve the client request. The Application Domain will be unloaded after the service unit is ended. This ensures the separation between each service units, other units will not be affected when this are any errors on one service unit.
User interfaces includes menus, forms, reports and dialog boxes supports multiple languages. Numbers and types of languages depend on the configuration settings, screen definition files and report layout files. Each user can set their default language in the user preference or user profile; also they can change the language through the main menu or toolbar at any time.
Message center is an internal messages exchange system that supports messages, announcements, tasks and e-mails. It looks like an e-mail client that has inbox, outbox and delete items box. Users can create, forward and reply messages and announcements; also they can create, modify and delete folders.
Processing outputs are most concern by end-users. The output unit support below form of output:-
- Pivot Table – support drag & drop columns
- Document Designer – for customise billing form
- File Export – PDF, XLS, RTF, HTML, XML, TXT, JPEG and TIF
- Report Manager – Send report to a group of users
- Report Schedule
User Account, User Role & Role Function
Each user is associated with a user account; it defines user related details, for instance, initial company, default language, access date as well as user role.
User role is a simple maintenance that defines different roles of users. It works as a conjunction of role function and user access right.
Users can start a function through the main menu, beside, they can use the shortcuts in the toolbar and tree menu to start a function. Items of the menu depend on user role setting.
Screen can be customised using the UI editor; users can modify the properties of controls, add predefined controls or delete the existing controls.
Report layout can be customised using the report layout editor; users can modify the properties of reports, reorder, resize and delete the predefined controls.
Custom Process is specifically designed for end-users which allow them to configure selection criteria screen to deal with interaction of a process.
Server manager group are the major unit of the server engine and cover below managers: –
- Standard Server Manager
- Server Startup Manager
- Server Configuration Manager
- Server Domain Manager
- Server Logging Manager
- Server Status Manager
- License Manager
- Agent Communication Manager
- Name Server Message Manager
- Component Plug-in Manager
- Schedule Manager
- HTTP Request Manager
Data Table: Applications access data through Data Table which enables applications to read, write, update and delete records from/to data source using a standard interface without concerning the type of data source.
Set Query: Applications can filter data by using queries to decrease the complexity of applications and increase the performance.
Table Logs: By enabling table log feature, all update actions and their details including data structures are written to log files.
Common Data Set: Basically, tables can be categorized as common tables and company tables. Common table are shared with all companies whereas company tables are separated by company code, which can be accessed by the current company.
FESA Application ServerBelow 15 Slices Demonstrate the Benefits of Server Functions for Your Apps
Server events are written to the Windows event log, it can be viewed by using event viewer. Logging is enabled by default; it can be disabled in the server configuration file.
Connections between application server and client are handled by the framework; data connection class encapsulates data compression, encryption, serialisation and deserialisation.
Policy is a generic mechanism for adding and defining application and system settings. A policy item contains a key/value pair and its schema; key and schema are defined by the developers, whereas the value is set by the user using the policy editor.
Service units serve incoming client requests which covers below units:-
- Standard Service Units
- Authentication Unit
- Server status Unit
- Security Unit
- Message Center Unit
- Language Unit
- File function Unit
- Application Unit
Scheduled task starts at a preset time which can run recursively. There are various types of schedules:
- Once – starts at a specified date and time once only.
- At startup – starts when application server start.
- Minutely – starts in every n minute after application server start.
- Hourly – starts at the nth minutes of the clock every hour.
- Weekly – starts at a specified time in the specified days of week.
- Monthly – starts at a specified time in the nth day of every month.