Sunteți pe pagina 1din 62

IFSworld.

com
IFS AURENA ARCHITECTURE
IFS APPLICATIONS™ 10

IFS ACADEMY
Technology Training

2
WELCOME
● Timings

● Safety

● Ground rules

● Objectives

3
TIMINGS
Lesson Topic Time
1. Introduction to Aurena Framework Day 1
2. Tooling and Project Setup Day 1
3. Working with Projections Day 1
4. Working with Clients Day 2
5. Working with Multiple Elements on a Page Day 2
6. Searching in Aurena Day 3
7. CRUD Actions Day 3
8. Using Commands Day 4

4 ●INTRODUCTION
TIMINGS
Lesson Topic Time
9. Dialogs and Assistants Day 4
10. Layered application Development Day 5
11. Translations in Aurena Day 5

5 ●INTRODUCTION
IFS AURENA ARCHITECTURE
COURSE OBJECTIVES
● Introduction to IFS Aurena Client
● Overview of IFS Aurena Framework
● Overview of IFS OData Provider
● Introduction to *.projection and *.client files

6
HANDOUTS
SAFETY AND GROUND RULES
● Fire Alarm – process – exits – muster

● Phones off or on silent

● Be social, switch of Social Media

● Respect

● Access

8
ACCESS?
IFS APPLICATIONS™ 10
MAPPING

SALES & SERVICE


OPERATIONS QUOTATION
PLANNING MANAGEMENT
EMPLOYEE & MATERIAL & SERVICE OVERALL
CONSOLIDATION MANAGER RESOURCE CONTRACT EQUIPMENT
SELF-SERVICE PLANNING MANAGEMENT EFFECTIVENESS

BUSINESS TIME & VISUAL PLANNING DEMAND WHAT-IF B2B


PLANNING ATTENDANCE & SCHEDULING FORECASTING SCENARIO
EXPLORER CONTRACTING

CASH FLOW EXPENSE PROJECT CONFIGURE & SUPPLY CHAIN DYNAMIC COMPLEX MRO API & ACCESS
MANAGEMENT REPORTING MAKE TO ORDER PLANNING SCHEDULING

PROJECT PAYROLL PROJECT RISK COMPONENT INVENTORY FIELD VEHICLE CONFIGURATION &
FINANCE ADMINISTRATION DELIVERABLES MANAGEMENT REPAIR REPLENISHMENT SERVICE & INFORMATION EXTENSIBILITY
MOBILE MANAGEMENT

HEALTH & PROJECT PROJECT-BASED CALL & CASE PREVENTIVE


eINVOICE SAFETY COMMISSIONING BUDGETING & MANUFACTURING SALES ORDER MANAGEMENT MAINTENANCE B2B
FORECASTING

ACCOUNTS QUALIFICATIONS & COMPATIBLE PLANNING & DISCRETE SRM & PRODUCT MAINTENANCE
PAYABLE EMPLOYEE UNITS SCHEDULING MANUFACTURING PROCUREMENT ESTIMATE PLANNING LOBBY
DEVELOPMENT MANAGEMENT

ACCOUNTS TRAINING ASSET PROJECT BATCH PROCESS SHIPMENT SALES MOBILE


RECEIVABLE MANAGEMENT DESIGN MANAGEMENT MANUFACTURING MANAGEMENT CONFIGURATOR WORK ORDER SOLUTIONS

ENGINEERING SUB-CONTRACT REPETITIVE RENTAL DATA


FIXED ASSETS RECRUITMENT CHANGE MANAGEMENT MANUFACTURING MANAGEMENT WEB STORE LINEAR ASSETS MANAGEMENT
MANAGEMENT

GENERAL EMPLOYEE & PDM SALES CONTRACT SHOP FLOOR WAREHOUSE


LEDGER ORGANIZATION CONFIGURATION MANAGEMENT REPORTING MANAGEMENT CRM EQUIPMENT STREAMS
MANAGEMENT

IFS IFS IFS IFS IFS IFS IFS IFS IFS


FINANCIALS™ HUMAN CAPITAL ENGINEERING™ PROJECTS™ MANUFACTURING™ SUPPLY CHAIN™ SALES & SERVICE™ MAINTENANCE™ BUSINESS
MANAGEMENT™ ENABLERS™

ACCOUNTING SUSTAINABILITY LIFECYCLE DOCUMENT REPORTING & ENTERPRISE QUALITY PROCESS IoT BUSINESS
OPERATIONAL
RULES MANAGEMENT MANAGEMENT MANAGEMENT ANALYSIS INTELLIGENCE MANAGEMENT MODELS CONNECTOR

IFS FOUNDATION1™— LAYERED APPLICATION ARCHITECTURE AND TECHNOLOGY


IFS AURENA
STATE OF THE ART USER EXPERIENCE
IFS AURENA
LOOK & FEEL

12
TRULY RESPONSIVE

13
TRULY RESPONSIVE

14
TRULY RESPONSIVE

15
IFS AURENA
OVERVIEW
WEB BASED USER EXPERIENCE
● Visually attractive and appealing experience
● HTML5 based and available on all client operating systems
● Rich user interaction patterns
● Responsive to device size and capabilities
TECHNOLOGY ARCHITECTURE
● RESTful backend following OData V4 protocol
● Easily consume IFS Application’s APIs from other clients
DECLARATIVE DEVELOPMENT
● Efficient page development using Marble, targeting web client technologies.
● Recognized tooling, deployment and life-cycle for IFS Aurena pages.

16
IFS AURENA ARCHITECTURE
OVERVIEW
USING ODATA TO WORK WITH A RESTFUL API

17
TRADITIONAL WEB APPLICATION
OLD WEB CLIENT

Initial request

HTML/JavaScript

Client Form POST


Server
HTML (with Data)

18
SINGLE PAGE APPLICATION (SPA)
AURENA WEB CLIENT

Initial request

HTML/JavaScript

Client AJAX Server


JSON {Data}

19
ARCHITECTURE OVERVIEW
KEY COMPONENTS

http(s) JDBC
IFS Web IFS OData Data & Business
Provider Logic

Browser Middleware Server Database

20
TECHNOLOGY STACK

IFS Web REST/HTTP IFS OData Provider

JavaEE Container
JavaScript Engine (Browser) (MWS)

Client Server
21
IFS WEB
CLIENT RUNTIME
● Client runtime that runs in the browser
● Uses IFS OData Provider as a gateway in order to access data and perform operations on
Logical Units.
● Based on AngularJS Framework
● Communication between IFSWeb and IFS OData Provider is done through REST/HTTP.

22
IFS ODATA PROVIDER
HOW TECHNOLOGIES STACK UP

IFS OData Provider

IFS WEB Apache Olingo - Java

OData

23
IFS ODATA PROVIDER
ABSTRACT VIEW

Aurena

MS Excel OData provider DB


Apache Olingo
3rd parties

Metadata Apache
Servlet Statements
Loading Olingo

24
IFS AURENA ARCHITECTURE
IFS ODATA PROVIDER
IFS OData Provider is based on Apache OLingo v4.

APACHE OLINGO
● Parse requests into Syntax Trees
● Validate Metadata
● Parse HTTP request content
● Generate JSON results

IFS ODATA PROVIDER


● Provide Metadata
● SQL and PL/SQL Statement Generation, Execution and Mapping
● Handle Security
● Exposes Client Metadata Endpoint

25
IFS AURENA ARCHITECTURE
IFS ODATA PROVIDER
DATABASE CONNECTIONS
● IFS OData Provider connects to DB through IFS middleware managed connection pool
(jdbc/fndbas).
● Connections are created as IFSSYS database user.
● Each request invokes Login_SYS.Init_Odp_Session_ to initialize the FndUser.
● IFS OData Provider will end the database transaction at the end of each call (Actions).
● Rollback if an exception occurs, Commit if not.

26
DATA TRANSFER
COMMUNICATION BETWEEN IFS WEB, IFS ODATA PROVIDER
AND DATABASE

27
ARCHITECTURE OVERVIEW
REST CALL TO A DATABASE CALL TRANSFORMATION

Translate the request

http(s) JDBC
IFS OData Data &
IFS Web Business
Provider
Logic
HTTP
Perform this request

Browser Middleware Server Database

28
ARCHITECTURE OVERVIEW
REST CALL TO A DATABASE CALL (READ)

SELECT * FROM PERSON WHERE AGE > 18

http(s) JDBC
IFS OData Data &
IFS Web Business
Provider
Logic
HTTP - GET
AdminPeople.svc/People?$filter=Age gt 18

Browser Middleware Server Database

29
ARCHITECTURE OVERVIEW
REST CALL TO DB CALL (CREATE)

ADMIN_PEOPLE_SVC.CRUD_Create()

http(s) JDBC
IFS OData Data &
IFS Web Business
Provider
Logic
HTTP - POST
AdminPeople.svc/People
{name:John; age: 25}

Browser Middleware Server Database

30
ARCHITECTURE OVERVIEW
REST CALL TO DB CALL (UPDATE)

ADMIN_PEOPLE_SVC.CRUD_Update()

http(s) JDBC
IFS OData Data &
IFS Web Business
Provider
Logic
HTTP - PATCH
AdminPeople.svc/People(PersonId=2)
{age: 35}

Browser Middleware Server Database

31
ARCHITECTURE OVERVIEW
REST CALL TO DB CALL (DELETE)

ADMIN_PEOPLE_SVC.CRUD_Delete()

http(s) JDBC
IFS OData Data &
IFS Web Business
Provider
Logic
HTTP - DELETE
AdminPeople.svc/People(PersonId=2)

Browser Middleware Server Database

32
PROJECTIONS
SEPARATION OF CLIENT LAYOUT AND CLIENT LOGIC

33
PROJECTION Server

CONCEPT IFS Business Logic

Client

Presentation
or
User interaction

Client Business Logic

34
PROJECTION
CONCEPT IFS Business Logic

Client Layout Client Business Logic

35
PROJECTION
CONCEPT IFS Business Logic

36
PROJECTION & CLIENT PAGES
THE CONCEPT
Projections
IFS Business Logic

Entity Utility

Entity

Entity Entity
EntitySets
Application Utility
Client Entity
Server Actions
Client Pages Entity
(UXX FW) Entity
Functions
Utility
Entity

Entity
Entity

37
MODELS AND CODE GENERATION
INTRODUCTION TO *.PROJECTION AND *.CLIENT FILES

38
AURENA MODELS
THE PROJECTION MODEL
Purpose: Specify data sources and operations that will be made available as a well defined
RESTful webservice (based on the 0Data protocol).
● Modelled using Developer Studio

Main Syntax:
● EntitySet
● Read Data
● CUD (Create/Update/Delete) operations
● Functions
● Actions

39
AURENA MODELS
THE CLIENT MODEL
Purpose: Specify visual UI elements, their layout & data bindings to the projection
● Modelled using Developer Studio

Main Syntax:
● Page Top Level “Containers”
● Assistant (i.e. Wizards)
● Group
● List
● Selector Visual Elements placed inside “Containers”

● Command
● Dialogs
● ….
40
PROJECTION AND CLIENT COLLABORATION
CONCEPT IFS Business Logic

Client Model

Projection model

41
CODE GENERATION
METADATA FOR RUNTIME
Deploy to
Generate Code Database
Client Model CLIENT_CPI Client
Metadata

Deploy to
Generate Code Database
Projection Model PROJECTION_SVC Projection
Metadata
+
CRUD/Custom
Method
Wrappers

42
IFS AURENA
IMPORTANT F1 PACKAGES
● MODEL_DESIGN_SYS
● Manage Projection & Client metadata needed by F1
● NAVIGATOR_SYS
● Manage Client Navigation Entries
● FND_ODATA_PROVIDER_SYS
● Retrieve Projection & Client metadata when necessary for the IFS OData Provider

43
ARCHITECTURE OVERVIEW
RUNTIME METADATA

W
R
http(s) JDBC A IFS Business
IFS Web IFS OData P
P Logic & Data
Provider E
R

Projection Client
Metadata Metadata

Browser Middleware Server Database

44
IFS AURENA ARCHITECTURE
OVERVIEW
Application Models
Web Browser
*.projection
*.client IFS Aurena
*.fragment *.plsvc

OData Requests Client Metadata


Model Source
IFS Middleware Server

IFS OData Provider Client Metadata Endpoint

SQL, PL/SQL Projection Metadata Client Metadata

Database Server

Projection Packages Client Packages Metadata (Projection + Client)


*_SVC
*_CPI Core Business Logic
Code FND_MODEL_DESIGN_TAB

Generator Storage

45
Browser
Aurena
UI

Shell Service
Page Libraries

AngularJS
Page Context Service
System

Records (OData v4) Metadata HTML5/CSS3/ES


IFS Middleware Server
FndODataProvider UI Web
Application
Apache Olingo (.WAR)
Page
metadata
Entity Metadata
Data Source
Processor Services

Projection Client
Code Generator

Actions CRUD Metadata


Application Metadata
models Database Server
And Projection Services (_SVC) Client Service (_CPI)
source code

Business Logic (_API)

Table storage
IFS AURENA UI
TOP LEVEL & ELEMENT LEVEL

47
IFS AURENA
Top Bar

Home
SHELL
Navigation to application Recent
pages through the Screens
Functional Navigation
structure Navigator
Panel

User Information and


User and
context information Context

Access to User Settings User Settings


and Help
and Help

Page hosted
in Shell

48
IFS AURENA
PAGE TYPES
LOBBY
IFS Lobby is an integrated part of
Aurena

Bi-directional navigate between


Lobby pages and Aurena pages

IFS Lobby pages, elements and data


sources are designed inside IFS
Enterprise Explorer lobby designer

49
IFS AURENA
PAGE TYPE
Step
ASSISTANT indicator
Guided data entry take
the user step by step to
enter complex data

Commands

50
IFS AURENA Commands
PAGE TYPE
PAGE
View edit and create Single
column
records

Dual
Collapsible data sections column
that can be arranged in
dual columns and
respond to the device size
Collapsible
and orientation Data
Sections

51
IFS AURENA
DATA SECTION
Card
CARD LIST PAGE
Alternative view for lists where alternative
content for each item is preferred
Heading
RICH CONTENT POSSIBLE
Fields
Fields
Flow text (Markdown)
Images
Charts Commands

52
IFS AURENA Choose List
view
DATA SECTIONS
Export to
LIST
Excel
Lists can either be
stand-alone pages or part
Choose
of a detail page.
columns

Filter rows

Sort (click
on column
header)

Row
actions
53
IFS AURENA
DATA SECTIONS
CHARTS
Embed charts on pages or on cards

CHART TYPES
● Line
● Bar
● Pie
● Radar
● etc

54
IFS AURENA
DATA SECTIONS
TIMELINE
View events as a timeline

Different event categories


Display title, description

Collapsible on different timescales

55
IFS AURENA
DATA SECTIONS
CALENDARS
Visualize items in “Outlook” style of
calendar

CALENDAR VIEWS
● Month view
● Week view
● Work week view
● Day view
● Agenda

56
IFS AURENA
SOME OTHER AVAILABLE UI ELEMENTS
FIELDS
With reference dropdown

DATE SELECTORS
Time part is optional

RATING, STATUS

BADGE, SLIDER

CONTACT VISUALIZATION

57
YOU CAN ONLY BUILD WITH THE BLOCKS

58
NEW MINDSET
DEMO
IFSworld.com
© COPYRIGHT© 2017 BY INDUSTRIAL AND FINANCIAL SYSTEMS, IFS AB (PUBL). ALL RIGHTS RESERVED. THIS MATERIAL AND ITS CONTENT
IS PRODUCED BY THE IFS ACADEMY FOR AUTHORIZED TRAINING PURPOSES ONLY AND REMAINS THE INTELLECTUAL PROPERTY OF IFS.
NEITHER THE MATERIAL OR ITS CONTENT MAY BE COPIED, REPRODUCED, OR DISTRIBUTED WITHOUT IFS’ EXPRESS WRITTEN PERMISSION.

IFS DOES NOT WARRANT, EITHER EXPRESSLY OR IMPLIED, THE ACCURACY, TIMELINESS, OR APPROPRIATENESS OF THE INFORMATION
CONTAINED IN THIS TRAINING MATERIAL AND DISCLAIMS ANY RESPONSIBILITY FOR CONTENT ERRORS, OMISSIONS, OR INFRINGING
MATERIAL. IFS ALSO DISCLAIMS ANY RESPONSIBILITY ASSOCIATED WITH RELYING ON THE INFORMATION PROVIDED IN THIS DOCUMENT
AND ANY AND ALL LIABILITY FOR ANY MATERIAL CONTAINED ON OTHER CHANNELS THAT MAY BE LINKED TO THE IFS TRAINING MATERIAL.

S-ar putea să vă placă și