01 LAA - Introduction
01 LAA - Introduction
com
LAYERED APPLICATION
ARCHITECTURE
Introduction
© 2015 IFS
ARCHITECTURAL CHANGES OVER TIME
Report Designer instead of RDL instead of XSL for report New Session Handling
Report Builder layouts
3
© 2015 IFS
DEFINITION
LAYERED APPLICATION ARCHITECTURE
4
© 2015 IFS
BACKGROUND
5
© 2015 IFS
BACKGROUND
Today IFS Applications 9
Configuration
Configuration
Customization X
Customization X, Y & Z
P
Complete Customer Solution
P
Standard functionality
Standard functionality
P
P
Customization Z
6
© 2015 IFS
CONCEPT
Personalization
Configuration
Configuration
Customization
Localization/Extension Code
Core
7
© 2015 IFS
RESULTS
IFS Applications 9
EASIER TO UPGRADE SOLUTION
Lower cost
Configuration
Upgrade more frequently
EVERYBODY WINS
Customization X, Y & Z
IFS Customer
Patches (IFS Update)
Lower costs and a better suitable solution
IFS System Integrator
Easier to implement
Standard functionality IFS
Less hours on supporting old versions, more
hours to develop new functionality
A BASE FOR IFS UPDATE CONCEPT !
8
© 2015 IFS
CODE LAYERS
APPLICATION CODE IS SEPARATED IN LAYERS
Code layers are separated with different source files or folders
PLSQL
TRANSLATIONS
CLIENT
9
© 2015 IFS
LAYERED SUPPORT
10
© 2015 IFS
DATABASE CODE GENERATION
*.views *.api
*.storage *.apy
Code
*.plsql Generator *.cre
11
© 2015 IFS
LAYERED BUSINESS LOGIC
IMPLEMENTATION
CORE - LAYER
PROCEDURE Validate_Order_Date(
order_no_ IN VARCHAR2 ) IS
BEGIN
IF Get_Order_Date(order_no_ ) < sysdate THEN
Error_Sys.Appl_General(‘ERROR: Before today.‘);
END IF;
END Validate_Order_Date;
CUSTOMIZATIONS - LAYER
--@Override
PROCEDURE Validate_Order_Date (
order_no_ IN VARCHAR2 ) IS
BEGIN
IF Get_State_Db(order_no_) <> ’Cancelled’ THEN
Error_Sys.Appl_General(‘NOTCANC: Cancelled…‘);
END IF;
super(order_no_);
12
END Validate_Order_Date; © 2015 IFS
LAYERED BUSINESS LOGIC
IMPLEMENTATION
PROCEDURE Validate_Order_Date (
order_no_ IN VARCHAR2 )IS
PROCEDURE Core (
order_no_ IN VARCHAR2 ) IS
BEGIN
END Core;
PROCEDURE Cust (
order_no_ IN VARCHAR2 ) IS
BEGIN
13
© 2015 IFS
LAYERED APPLICATION MODEL
IMPLEMENTATION
APPLICATION MODEL IS NOW AN ACTIVE PART OF IFS APPLICATIONS SOURCE CODE
Template code is 100% generated from model
Behaviour changes are achived by overriding template methods
(not changing template methods)
ADDING AN ATTRIBUTE
14
© 2015 IFS
LAYERED APPLICATIONFORMS CLIENT
IMPLEMENTATION
BASED ON FORM VISUAL INHERTIANCE
16
© 2015 IFS
LAYERED PRESENTATION OBJECT
IMPLEMENTATION
PRESENTATION OBJECT (PO) SCANNER
Presentation Object scanner read layer from client source
New Presentation Object dependency type, inherited for layered forms
To start a layered form, the layered Presentation Object must be granted
17
© 2015 IFS
TOOLING SUPPORT
18
© 2015 IFS
APPLICATIONS 9 - CORE CODE CHANGES
APPLICATION MODELS
All models has been verified and changed to match implementation
New model types and model properties added and used to support common
application development scenarios
BUSINESS LOGIC
Template code has been separated from business logic files.
Template overrides used where changes/additions was needed
Business logic resides in new files (.plsql & .views)
APPLICATIONFORMS CLIENTS
Old style, ported child tables (nested child tables) transformed into
ApplicationForms child tables (cChildTable instances).
All over changes regarding navigation, protection level etc (scripted by tool)
19
© 2015 IFS
LAA DESIGN PRINCIPLES
TECHNICAL DOCUMENTATION
http://wis.ifsworld.com/f1docs/apps9/
http://wis.ifsworld.com/f1docs/apps9/Foundation1/010_overview/100_arc
hitecture/010_LAA_overview/default.htm
20
© 2015 IFS
www.IFSWORLD.com
THIS DOCUMENT MAY CONTAIN STATEMENTS OF POSSIBLE FUTURE FUNCTIONALITY FOR IFS’S SOFTWARE PRODUCTS AND
TECHNOLOGY. SUCH STATEMENTS OF FUTURE FUNCTIONALITY ARE FOR INFORMATION PURPOSES ONLY AND SHOULD NOT BE
INTERPRETED AS ANY COMMITMENT OR REPRESENTATION. IFS AND ALL IFS PRODUCT NAMES ARE TRADEMARKS OF IFS. THE
NAMES OF ACTUAL COMPANIES AND PRODUCTS MENTIONED HEREIN MAY BE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.
© 2015 IFS