Professional Documents
Culture Documents
Framework
(OUAF - Application Framework for CCB and
RMB)
Overview
approach an approach to
document and consolidate as we try to understand the new
module/functionality with the aim that it will help other associates
to understand the same module/functionality in a considerably
lesser time.
The following documents were referred for creating this training
material
Oracle Utilities Application Framework Business Process Guide
Oracle Utilities Application Framework Administration Guide
Oracle Revenue Management and Billing Banking User Guide
Oracle Revenue Management and Billing and Oracle E-Business
Suite Integration Implementation
In this presentation the OUAF screens have been logically depicted
using worksheet layouts to represent the understanding based on
the descriptive contents in the above guides. The actual screens in
the application framework can have a different layout.
2
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
Application Modules
Tier 1 (Presentation)
Internet Explorer 6.0 or
higher with Windows XP SP3
Internet Explorer 8.0 with
Windows 7
Oracle WebLogic
IBM Websphere
Tomcat (for development
only)
ier 3 (Persistence / DB Server)
Oracle Database Server 11g
Operating System
Non-web prerequisites
Java
Oracle Client 11.2.0.2
Micro Focus Cobol (COBOL
programming language)
Perl (programming
languages)
Hibernate (maps objectoriented domain model to
traditional database
model)
C3PO (library for
augmenting traditional
JDBC drivers with JNDIbindable DataSources)
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
12
13
- IE 6.0+
Web
Server
Application
Server
- WebLogic
- WebSphere
- Tomcat*
- Oracle AS
DB
- Oracle
- DB2
- MSS
WebLogic
WebSphere
Tomcat
Oracle AS
Page Server
Cache
Business
Logic (core)
Server
XAI
MPL
Custom
Plug-ins
XML
Application
Integration
Tool
Java, Cobol
Hibernate
Database Connectivity
(multi-protocol)
ORACLE, DB2,
UDB or SQL Server
Database
Server
15
XML
Redundant UI Business Logic
XSLT
UNIX
(IBM, HP,
Sun, Linux)
Win 2003
UNIX
(IBM, HP,
Sun, Linux)
MVS (z/OS)
Win 2003
Web /
Application
Server
Metadata Driven
Database
Server
16
Win XP
IE 6.0
UNIX
(IBM, HP,
Sun, Linux)
Win 2003
Java Servlets
AJAX based
Stateless
Language and Regional
Settings
Business Logic
Web /
Application
Server
Validation
Metadata Driven
Plug-ins
Framework Components
UNIX
(IBM, HP,
Sun, Linux)
MVS (z/OS)
Win 2003
Database
Server
Security
Audit
License Key
17
Web
Server
Application
Server
DB
18
Database Independence
Win XP
IE 6.0
UNIX
(IBM, HP,
Sun, Linux)
Win 2003
UNIX
(IBM, HP,
Sun, Linux)
MVS (z/OS)
Win 2003
Web /
Application
Server
Database
Server
Minimal DB dependencies in
code.
Avoid DB specific features
(e.g. FK and RI validation,
Triggers, Stored Procedures
Metadata Driven
19
MO Definition
Most logical transactions are made up of several
tables
The term maintenance object (MO) is used to
describe the group of tables that hold an
Theobjects
person
maintenance
physical data
Person
Person
CI_PER
Person ID
Person / ID
CI_ID_TYPE
CI_PER_ID
Person /
Name
Person /
Phone
Phone
Type
CI_PER_NAME
CI_PER_PHONE
CI_PHONE_TYPE
Note, this is a
simplification as this
MO has more than 4
tables
20
Why MOs?
A service-oriented architecture (SOA) means that
services are invoked to perform tasks (e.g., read a
person, add a person, change a person, etc.) and the
service determines how to satisfy the request
This means the caller does not have to know about the
table structure
A great deal of logic in the system is implemented by
invoking the MOs service via an XML document
Person
Person
CI_PER
Person / ID
CI_PER_ID
Person /
Name
Person /
Phone
CI_PER_NAME
CI_PER_PHONE
21
Business Object
Business objects are specialized versions of MOs that are designed
to match the business. For example, a tax management
implementation could set up BOs for individual taxpayers,
corporations, partnerships, etc. rather than work with the generic
person MO
22
Person
Person
Name
Person Id
Person
Phone
Id Type
Phone
Type
Person
Char
Char Type
Busines
s
Objects
Individual Taxpayer
Legal name
ID (e.g. drivers license)
Birth date Commercial Customer
Name
Spouse
Tax ID
Number of dependents
Primary SIC code
Daytime phone
Accounting phone nbr
Evening phone
Service phone nbr
Mailing address
Mailing address
Credit issues address
navigate to other
transactions.
An Algorithm Example
Fixed
Amou
nt
% of
Paymen
t
Levy N
SF C h
arge
Custome
r
Class
26
27
<BizTalk>
<Body>
<A ccountInfo>
<Reques t do cTynfo">
<Accoun t>
<company>99ny>
<accou ntI d>5n tId>
<area>001</a rea >
</Account>
</Req uest>
</AccountInfo>
</B ody>
</BizTalk >
Real time
XML: Web Services
interfaces:
Integration
CRM, MS Office,
Web Self Service,
etc.
Servers
<BizTalk>
<Body>
<AccountInfo>
<BizTalk>
<Body> <Request docTynfo">
<Account>
<AccountInfo>
<BizTalk>
<company>99ny>
<Body> <Request docTynfo">
<accountId>5ntId>
<Account>
<AccountInfo>
<area>001</area>
<company>99ny>
<Request
docTynfo">
</Account>
<accountId>5ntId>
<Account>
</Request>
<area>001</area>
<company>99ny>
</AccountInfo>
</Account>
<accountId>5ntId>
</Body>
</Request>
<area>001</area>
</BizTalk>
</AccountInfo>
</Account>
</Body>
</Request>
</BizTalk>
</AccountInfo>
</Body>
</BizTalk>
ERP / GL
Billable Charges
Meter data
Outside Agents
etc
Mass XML
Integratio
n
XML
Staging
<BizTalk>
<Body>
<AccountInfo>
<BizTalk>
<Body> <Reques t docTynfo">
<Acc ount>
<AccountInfo>
<BizTalk>
<c ompany>99ny>
<Body> <Request docTynfo">
<acc ountId>5ntId>
<Account>
<AccountInfo>
<area>001</area>
<Reques<company>99ny>
t docTynfo">
ount>
<acc</Acc
ountId>5ntId>
<Account>
</Request>
<area>001</area>
<c ompany>99ny>
</AccountInfo>
</Account>
<accountId>5ntId>
</Body >
</Request>
<area>001</area>
</BizTalk>
</AccountInfo>
</Account>
</Body>
</Reques
t>
</BizTalk >
</AccountInfo>
</Body>
</BizTalk>
Mass
record
Integratio
n
DBMS
Staging
28
XAI Tool
Allows invocation of application functions via Web Services
Mechanism to receive and dispatch XML based messages to
other systems
HTTP
Message Queue
Flat Files
Staging Database
Biztalk
SeeBeyond
MQSeries
JMS Queues
29
Data Dictionary
Maintenance Objects
Algorithms
COBOL source
Java Docs
Service XML
30
Audit Trails
You tell the system which fields to audit
You also tell the system the name of the table on which to
store the audit log
When a user changes such a field (or adds / deletes a record
that contains such a field) the following information is
recorded on an audit log:
User ID
Date/Time
Table name
Rows prime key value
Field name
Before image (blank when a row is added)
After image (blank when a row is deleted)
Row action (add, change, delete)
31
Localization Support
The following values can be defined on the users profile in
release
Date / Time display formats
o Position of Year, Month, Day
o Time Format (e.g., 24 hour clock versus AM/PM)
Currency format
o Decimal point symbol
o Thousands separator
o Position of negative sign
32
33
Web /
Application
Server
Database
Server
Browser:
provides logon prompt,
keeps a session cookie that
holds the authentication
certificate
SSL encryption can be used here
if desired; managed by Web
server
Web server:
provides authentication,
allows you to use your
operating systems
authentication: Windows, Unix,
authorization services are NOT
used
Sessions expire
when:
Web server time
out,
browser is closed
Browser caches the
users application
security values
34
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
35
Dashboard
Area
Object Display
Area
36
Menus are available in the object display area to help users navigate to various
pages within the system.
Users can click anywhere on the menu bar on the left side of the object display
area to expand the menu.
37
When a script is initiated, the object display area shifts down to make
room for the script area.
The information in the script area takes the user through the steps in
the selected business process.
38
Grid
Editable Grid
Currency Field
Scrolls
Go Look Button
Accordion
Trees
40
Maintenance Pages
41
Maintenance Pages
42
Query Pages
43
Portal Pages
44
Dashboard Portal
Dashboard Area is made of Dashboard Portal with multiple Zones
Script Area
Current To Do
Zone
Favorite Links
Zone
Favorite
Scripts Zone
Switch
Language
Zone
To Do
Summary
Zone
Work List Zone
Go to Object
Launch Script
View To Do Entry Information
View Related To Do Entries
Assign Related To Do Entries
Complete To Do Entries
Request next To Do entry
List favorite links from User
Preferences
Clicking on the favorite link invokes
the transaction
List BPA Scripts from User
Preferences
Clicking on the favorite script
executes the script in the script
area the applications language
Switch
Summary of To Do Entries assigned
to the user along with aging
Selecting an entry will transfer
user to the To Do List transaction
screen
Provides quick access to an entire
column
45
User Preferences
User or My Preferences (Admin > Users or Main > My Preferences)
Main
First Name
Last Name
User ID
Login ID
Language
Code*
User Enabled
User Type
Portals Profile User
ID
Favorites Profile
User ID
Display Profile ID*
Email ID
Dashboard Width
Home
Page
User Group
End Date
Access Security
To Do Roles
Portal Preferences*
Default Access
Group
Data Access
To Do Role
Roles
Expiration Date
Favorite Links*
Favorite Scripts*
Navigation
Option
Sequence
Security Access
Portal
Zone
Display flag
Initially
Collapsed
Sequence
Refresh Seconds
Security Access
Scripts
Sort Sequence
Security Access
Characteristics
Characteristic
Types
Characteristics
Value
Sequence
46
Zones
Portals and Zones are the preferred technique used by the base
product for query and maintenance dialog
Additional Portals and Zones can be configured if the base package
pages or portals do not satisfy the business needs
Types of Zones
Info Zones
Query Zones
Multi-Query Zones
Map Zones
47
48
49
50
51
All-In-One Portal
single portal allows a user to
find a record and maintain the
record
A zone listing all existing
records is displayed when first
entering the portal
User can perform actions on
existing records
User can add new records
List Zone
This info zone appears when first entering
the portal and displays a row for each
record
Add link on the zones title bar is available
to launch BPA script to add new record
Broadcast icon with each row to open
other zones
Edit, Delete, Duplicate icon may be
included
with
each row
Object
Display
Zone
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
53
Batch Processes
Batch processes handle many important functions in
the system including:
The billing process (note that bills can also be created
online/ real time)
The process that monitors customers for overdue debt
The payment upload interfaced
The meter-read download and upload
and many more
54
Batch Processes
55
Errors
Warnings
o These are unusual, but non-fatal conditions detected by
the job
o An entry is created in the batch run's message log
(explained in a few slides) for each warning
Non-severe errors
Severe errors
o These are errors that will cause the batch job to abort
immediately
56
Parallel Processing
57
Start with
one thread
for every
MHz of
application server CPU available.
The
following
is a100
rough
guideline:
For example, if you have 4, 450 MHz processors available on your application
server, you can start with 18 threads to begin your testing: (450 * 4) / 100 =
18.
Parameters
59
Parameters
Business date
o The default is always the current date
Rerun number
o This is used for batch jobs that produce extract files and
is only specified to re-extract historical output
Report Code
Report Code
<program-specific parameters> Description
Long Description
61
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
62
63
To Do Summary
The To Do Summary page summarizes all entries that a user can access
Priority is discussed
later
To Do List
The To Do List page shows entries of a given type
These options are used
to sort and filter the
entries in different
ways
To Do Summary Zone
The To Do Summary Dashboard zone shows
a summary of the entries that are assigned
to you
This is the same information shown on
the To Do Summary page in the Assigned
to You column
Putting this zone on your Dashboard is a
over a bar to see
simple way to alwaysHover
see
what you've been
the number of entries;
assigned and how old
the
entries
click
onrespective
the bar to open
a
To Do List
are
Click to refresh the list
(for performance
reasons, this zone only
refreshes on demand)
66
To Do
Events trigger creation of email-like messages describing work that
requires human attention. Each message can be treated as a To Do
entry
To Do
Role
Each To Do entry is
assigned to a specific To
Do Role
Role defines the users
who may work on the
entry
To Do Type defines the
permissible roles that
can be assigned to a To
Do entry
To Do Priority
Priority represents theWork Distribution
processing order with
To Do entries may be
respect to other To Do
manually assigned to
entries
users by supervisors
Users can themselves
pick To Do entries
Dynamically assign the
highest priority work to
users on demand
whenever they are
available for fixing
67
errors
To Do
To Do Type
Priority
Total
No of Open
No of Being Worked On
Age-bars
User ID
To Do Type
To Do entry
To Do Type
Priority
Total
No of Open
No of Assigned to you
Age-bars
To Do Type
To Do entry
Status
Priority
Create Date/Time
Worked By
No of Related Entries
To Do Entry Status
Message
Assign to User
To Do > To Do List
68
To Do
To Do Entry and To Do Log transactions maintain the To Do entries
To Do Entry
To Do > To Do Entry (Add)
To Do Type
To Do Type Priority
Override Priority
Subject
Comment
Send To
Role
User
To Do Entry
To Do > To Do Entry
To Do ID
To Do Type
Role
Message
Status
Priority
Assigned To
Sent By
Created By
Extract Info
Comments
Summary of related entries
Complete To Do
Forward To Do
Send Back To Do
Log Date/Time
Log Type
Details
Log User
Assigned To
To Do Search
To Do > To Do Search
Related To Do
To Do Type
Char Type
User
Date Range
Status
To Do ID
To Do Type
Role
Message
Status
Priority
Assigned To
Sent By
Created By
Extract Info
Comments
Complete To Do
Forward To Do
Send Back To Do
69
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
70
Logical Architecture
Web Application
Server is divided into
3 logical tiers:
presentation services,
business logic, and
data access
Inbound HTTP
requests are handled
by Java Servlets
Java Servlet may
invoke Data Service
Objects
Data Service Objects
route control to Java
based business
entities
Business Entities use
Hibernate ORM for
data access and
persistence
Oracle RMB Architecture makes use of Services, which are data access and update services
Data Access and Update Service are implemented in Java accessing Oracle or DB2 database
Page service defines all data needed to display data on a single tab menu across all child tab pages
The data structure is logically a tree, with a root object containing attributes as field/value pairs, and
recursively containing lists of similarly structured objects.
Page services may be called in five primary "modes": Read, Change, Add, Copy, Delete, and Default.
List services can be used to flesh out lists contained in page services where more data is available
than can fit in the (fixed-size) buffer. List services do not support database updates.
Search services are used to support ad-hoc user searches for data. The results are structurally
similar to List services. The input is a set of criteria and a search mode, with values "MN", "AL", "A2",
A3", etc.
System represents the structure of a service using an XML document. Every service is defined with a
72
single XML document, which is generated based on the Java class information.
Other applications that are based on the same framework include modules
within Oracle Customer Care and Billing
73
Browser
on Client
ORM
Query
Java Servlet
on Web
Application
Server
Retrieve
meta-info of
the service
Identify
Service to
handle the
request
Persistent
Tables on
RDBMS
Build Java
data
structure
from browser
data (string)
using service
XML metainfo
Invoke Java
service
74
Browser
on Client
Combine
Model and
View by a
namematching
scheme
Model
Servlet on Web
Application
Server
Generate
View - HTML
with <label>
and
<select>
elements
Identify
XSL/T
Template
files
Apply XSL/T
template
files on UI
Metadata
XML
Data
UI
Metadata
XML
View
Persistent
Tables on
RDBMS
75
Metho
d
loginInfo
GET
Provides useful global data at login, retained for life of session, such as a map of all
system URLs and a definition of menu structures
pageRead
GET
pageChange
POST
Accepts a data model representing modifications that should take place against an
existing database entity, returns modified model.
pageAdd
POST
Accepts a data model representing a new entity that should be inserted into the database,
returns new model.
pageDefault
POST
Accepts a data model describing a triggered "default operation, returns a model object
containing default values.
pageDelete
POST
pageCopy
POST
Accepts a data model representing a model that should be duplicated, returns the
duplicate.
listRead
GET
Accepts key/value pairs describing a list of database entities, returns said list.
Search
GET
Accepts key/value pairs containing search criteria, returns list of objects satisfying said
criteria.
StringSort
POST
Allows locale-sensitive sorting of strings. Used for sorting strings in grids when user clicks
on the column header.
76
Agenda
Oracle Utilities (Oracle RMB) - History
Application Framework System wide Standards
Application Framework Configurable UI Features
Application Framework Batch Jobs, Reports and XAI
Application Framework To Do
Application Framework Logical Architecture
Application Framework Options, Tools and Meta-data
General Options
Configuration Tools
Security and User Options
Other Tools
77
78
General Options
Installation Options
Multi-Language Options
Country level Options
Currency Codes
Time Zones
Geographic Types
Work Calendar
Display Profiles
Phone Types
Characteristic Types and Values
Foreign Key References
Feature Configurations
Master Configurations
79
80
System Event
Description
System Event
Description
Email Service
Validate
Attachments
Next To Do
Assignment
Geocoding Service
Reporting Tool
SMS Receive
Service
Global Context
Ldap Import
To Do Information
Ldap Import
Preprocess
To Do Pre-creation
82
83
84
85
Foreign key
-value
Valid values are
defined in another
table
File Location
- Characteristics (values)
of this type contain a URL
pointing to a file or a web
site
- Holds references to
documentation / images
associated with a given
entity
- Example, image of a
letter from a customer as
a file location
characteristic on
customer contact entry
- Button appears on the
entity screen to open the
URL in a separate
browser window
86
87
Application Security
Action Level Security
Field Level Security
Encryption and Masking
Row Security
Access Groups
Data Access Roles
Users
Application Services
Security Types
User Groups
Access Groups
Data Access Roles
Users
88
Fields
Algorith
m
Security Type
Authorization
Levels
Application
Service
Access
Modes
Access
Group
User Group
User
Data
Access
Role89
Application Service
Description
Maintenance
Object
Portal Page
For portal based user interfaces, each main portal defines an explicit
application service with the access mode Inquire, allowing the user
interface to be secured independently of the underlying object security.
Menu Items
Zones
Business
Objects
BPA Scripts
BPA scripts that are accessible via a menu define an application service with
the access mode Execute.
Business
Services
90
Application Service
91
92
93