OBIEE/ADF Integration using the Action Framework
Mark Rittman, Technical Director, Rittman Mead
UKOUG Conference, Birmingham 2011
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Mark Rittman
Mark Rittman, Co-Founder of Rittman Mead
Oracle ACE Director, specialising in Oracle BI&DW
14 Years Experience with Oracle Technology
Regular columnist for Oracle Magazine
Author of forthcoming Oracle Press book on OBIEE 11g
Technical Director at Rittman Mead (http://www.rittmanmead.com)
Oracle BI Foundation Specialist Gold Partner
Offices in UK, USA, India and Australia
Writer for Rittman Mead Blog :
http://www.rittmanmead.com/blog
Email : mark.rittman@rittmanmead.com
Twitter : @markrittman
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Andrejus Baranovskis
CEO and Founder of Red Samurai Consulting
Oracle ACE Director specializing in ADF, WebCenter, UCM, SOA and BPM
Regular blogger at http://andrejusb.blogspot.com/
Red Samurai Oracle Specialized Partner
Oracle Fusion Middleware Innovation Award 2010
SOA Partner Community Award for Outstanding Contribution Across the World 2010
2010 Enterprise 2.0 Blazer: Enterprise 2.0 Leader Award
Email : abaranovskis@redsamuraiconsulting.com
Twitter : @andrejusb
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Oracle Business Intelligence 11g (11.1.1.5)
Oracles BI platform, now at release 11.1.1.5 (11gR1)
Wide range of servers, tools, metadata stores based around Oracle FMW11g
Based on Siebel Analytics with additions from Oracle and Hyperion products
Often used in conjunction with the BI Applications and EPM Suite
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Web-Based Delivery of Analytics and Analysis
Users access information and analytics through role-based dashboards
Can also publish reports to PDF, distribute, or access through MS Office
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Web-Based Delivery of Analytics and Analysis
Users access information and analytics through role-based dashboards
Can also publish reports to PDF, distribute, or access through MS Office
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Web-Based Authoring Tools for Power Users
Reports and analyses are created using web-based tools
Point-and-click creation of tables, pivot-tables, charts, maps, gauges
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Web-Based Authoring Tools for Power Users
Reports and analyses are created using web-based tools
Point-and-click creation of tables, pivot-tables, charts, maps, gauges
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
All Built Using Shared Common Enterprise Information Model
All reporting tools can take their data from a shared metadata layer
Defined as dimensional model, embeds common calculations and drill paths
Subject-area and row-level security
Three-layer design to provide
abstraction from underlying
complicated source systems
Simplification of the Data Model
Integration of Disparate DataSources
Addition of Business Logic and Calculations
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Based on Fusion Middleware 11g Platform
Built on a foundation of Oracle Fusion Middleware 11g
Common security (Oracle Identity Management, Oracle Access Manager)
Deployed on WebLogic Server
Managed through Fusion Middleware
Control (Enterprise Manager)
Built using multiple technologies
including JDeveloper (ADF)
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Oracle Application Development Framework (ADF)
Oracles Java framework for building enterprise applications
Visual and declarative approaches to Java EE development
Uses the MVC (Model-View-Controller) architecture
Uses JDeveloper 11g to create applications (free download)
Runtime element included in
Oracle Application Server license
Tooling that is used to create the
Fusion Applications
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF Architecture
Aim is to minimize the amount of Java code you write (a.k.a., the successor to Forms)
MVC (Model-View-Controller) approach separates the application into
A Model layer that handles
interactions with data sources
A View layer that handles
the UI, and
A Controller layer that
handles the application flow
Also adds a Business Services
layer that provides access to
data from various sources
Model layer then acts
as an abstraction layer
over Business Services layer
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
OBIEE 11g and ADF 11.1.1.5+ Integration Points
OBIEE Analyses, dashboards and scorecards can
be embedded in ADF pages
OBIEE Semantic layer can be a data source for
ADF business components
OBIEE Repositories can use ADF View Objects
as data sources
OBIEE Analyses and ADF regions
can exchange parameters and events
OBIEE, through the Action Framework,
can leverage ADF web services
Both OBIEE and ADF can share common
security, and hosting in WebLogic Server
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Building Blocks for the Oracle Fusion Applications
The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE
ADF applications, using Fusion Middleware and a SOA architecture
BI components embedded in all pages
Workflow, data entry, analysis, collaboration all in one hybrid application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Building Blocks for the Oracle Fusion Applications
The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE
ADF applications, using Fusion Middleware and a SOA architecture
BI components embedded in all pages
Workflow, data entry, analysis, collaboration all in one hybrid application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Building Blocks for the Oracle Fusion Applications
The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE
ADF applications, using Fusion Middleware and a SOA architecture
BI components embedded in all pages
Workflow, data entry, analysis, collaboration all in one hybrid application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Building Blocks for the Oracle Fusion Applications
The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE
ADF applications, using Fusion Middleware and a SOA architecture
BI components embedded in all pages
Workflow, data entry, analysis, collaboration all in one hybrid application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Why Is ADF of Interest to OBIEE Developers?
Allows you to create composite applications that create a workflow around OBIEE
Escape the restrictions of a dashboard, to create a proper LOB application
ADF also has early access to new DVT visualizations that may be useful for your project
Gantt Charts
Organization charts
More graph types
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Why Is ADF of Interest to OBIEE Developers?
Allows you to create composite applications that create a workflow around OBIEE
Escape the restrictions of a dashboard, to create a proper LOB application
ADF also has early access to new DVT visualizations that may be useful for your project
Gantt Charts
Organization charts
More graph types
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Why is OBIEE of Interest to ADF Developers?
Organizes reports into a catalog, with full report authoring tools
Metadata (semantic) layer, adds business context and integration to data
Pre-built integration with EBS, Fusion Applications, PSFT, Siebel etc
Full range of visualizations including scorecards, KPIs, maps, pivot tables
New Action Framework in OBIEE 11g integrates with web services, ADF events etc
Ability to connect to analytic
data sources such as
Essbase
TimesTen
Teradata
Oracle OLAP
BI Automation through agents,
conditions and actions
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
The OBIEE 11g Action Framework
Provides the ability for OBIEE to call web service and other application functionality
Define actions that leverage web services, server-side scripts and other functions
Part of the Action Framework
Detect business events through Agents
Analyze through BI dashboards, analyses, scorecards etc
Respond through Actions
Allows you to combine BI and transactional
applications in closed loop analytics
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Why Not Just Use the ADF Data Visualization Tools Components?
ADF has a number of data visualization components (DVT)
These are actually the components that OBIEE tables, pivots, charts are built on
But they do not come with a metadata layer
And they are basic; they do not support KPIs, scorecards, interactions, actions
No ability to leverage Essbase and other non-SQL sources
Building blocks, not a BI platform
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Integration Example: A Composite ADF / OBIEE 11g Application
To demonstrate how this integration works, we created a sample application
Demonstrate a number of integration points
Embed BI objects into an ADF application
Pass parameter from the ADF application to the BI objects
Pass context (parameters) from the BI object to the ADF components
Have the BI objects call JDeveloper web services from the dashboard
Other integration points to be developed in future
Combine OLTP and BI data in single ADF form
Source ADF BC data from OBIEE metadata layer
ADF application call BI alerts, actions from ADF application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Combined ADF / OBIEE Application Built on OFM 11.1.1.5
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Combined ADF / OBIEE Application Built on OFM 11.1.1.5
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Combined ADF / OBIEE Application Built on OFM 11.1.1.5
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Steps to Create the BI Content
1. Create the Oracle BI Repository (the metadata layer)
2. Create analyses against repository data, add calculations, graphs etc
3. Create key performance indicators & KPI watchlist
4. Create agents and actions
5. Create dashboards that implement these objects
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 1 : Create the Oracle BI Repository
Use the Oracle BI Administration tool to create an Oracle BI Repository
Import tables, views and other objects from the OE Sample Schema
Create joins and keys in the Physical layer
Define logical dimensional model, calculations and hierarchies in the Business Model
Publish as a subject area in the Presentation layer
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Adding ADF Business Components View Objects as a Data Source
Using OBIEE 11g, ADF Business Component View Objects can be a data source
Read from the view object as if it were a regular data source
Requires an OBIEEBroker shared library to be deployed to the ADF WLS server
Allows the BI dashboard to run off of the same data as the ADF application
Can also add SQL Bypass database that
takes the VO SQL and executes directly
on the DB, allow aggregations and functions
to be function-shipped to the DB
Approach taken by Fusion Applications for
OTBI (Oracle Transactional BI)
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 2 : Creating Analyses
Analyses (reports) are then created using the Business Intelligence application
Create filters, calculations and other criteria
Add tables, views, graphs, gauges
Save into the Presentation Services Catalog
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 2 : Creating Analyses
Analyses (reports) are then created using the Business Intelligence application
Create filters, calculations and other criteria
Add tables, views, graphs, gauges
Save into the Presentation Services Catalog
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 2 : Creating Analyses
Analyses (reports) are then created using the Business Intelligence application
Create filters, calculations and other criteria
Add tables, views, graphs, gauges
Save into the Presentation Services Catalog
3
1
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 3 : Create KPIs and KPI Watchlist
Using metrics and dimensions defined in the Oracle BI Repository, KPIs can be created
Made up of four elements
Actual measure, Target measure
Dimensionality, Thresholds (states)
KPIs can then be organized into KPI watchlists, and balanced scorecards
Provides additional business context for the data in the system
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 3 : Create KPIs and KPI Watchlist
Using metrics and dimensions defined in the Oracle BI Repository, KPIs can be created
Made up of four elements
Actual measure, Target measure
Dimensionality, Thresholds (states)
KPIs can then be organized into KPI watchlists, and balanced scorecards
Provides additional business context for the data in the system
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 4 : Creating Agents and Actions
A function provided by the JDeveloper application adds or removes credit holds
Provided by a web service developed in JDeveloper; WSDL URL then passed to BI
Action is created in the catalog that references this WSDL
1 2 3
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 4 : Creating Agents and Actions
Action is then added to the analysis
Web service parameters are then mapped to columns as inputs
Action can be made conditional (only display if credit currently on hold)
When triggered by the user, executes the web service asynchronously
via Action Service Java component in OBIEE 11g
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Creating the BI Content Step 5 : Creating Dashboards
All content is then added to a BI dashboard
Analyses, KPI scorecards or whole dashboards can then be added to the ADF
application, accessed through a connection to the catalog
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Demonstration
BI Content for Demo
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF Application Overview
Oracle Application Developer Framework (ADF) application
built using JDeveloper 11.1.1.5 (11.1.2 not compatible with BI objects in ADF page)
Created using the Fusion Web Application application template
MVC (Model, View, Controller)
design pattern
Model consists of Business Component
View Objects
View consists of JSF pages
Controller is Java application logic
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Initial Application Design - Powerpoint Mockup
Initial design was mocked-up in Powerpoint
Four-tab application focused around supply chain, finance, sales, management
Each page will have elements of both BI, and ADF transactional elements
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF / OBIEE Integration Tasks
1. Create the Catalog Connection
2. Create the framework application
3. Add the drop-down menu
4. Embed the BI content in the application
5. Pass Context from BI to ADF via QDR
6. Implement the transactional form & pass QDR values
7. Deploy to WLS server
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 1 : Adding the Catalog Connection
JDeveloper 11.1.1.5 allows you to create a connection to the OBIEE Presentation
Services Catalog
Once connected, can then drag and drop BI objects into the application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 1 : Adding the Catalog Connection
JDeveloper 11.1.1.5 allows you to create a connection to the OBIEE Presentation
Services Catalog
Once connected, can then drag and drop BI objects into the application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 1 : Adding the Catalog Connection
JDeveloper 11.1.1.5 allows you to create a connection to the OBIEE Presentation
Services Catalog
Once connected, can then drag and drop BI objects into the application
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Credentials / Security Integration Issues
When you add the catalog connection, the security credentials are stored in the
integrated WLS server used by JDev
These then need to be copied to the deployment WLS credential store like this:
1. Create [Middleware_Home]\user_projects\bifoundation_domain\migration
2. Copy all scripts from [Middleware_Home]\oracle_common\modules\oracle.jps_11.1.1\scripts
to the above folder
3. Create a config.xml file to define the migration process
4. Copy the cwallet.sso file from the local JDeveloper project to the migration directory.
5. From command line execute the below command, to perform the migration
C:\Middleware\oracle_common\common\bin\wlst.cmd
migrateSecurityStore.py -type credStore
-configFile config.xml -src mySrc -dst myDest
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Config.XML File to Define Credentials Migration
Used to define what is migrated by the migrateSecurityStore.py script
<?xml version="1.0" encoding="UTF-8" standalone='yes'?>
<jpsConfig xmlns="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd"
schema-major-version="11" schema-minor-version="1">
<serviceProviders>
<serviceProvider type="CREDENTIAL_STORE" name="credstoressp"
class="oracle.security.jps.internal.credstore.ssp.SspCredentialStoreProvider">
<description>SecretStore-based CSF provider</description>
</serviceProvider>
</serviceProviders>
<serviceInstances>
<serviceInstance name="credstore" provider="credstoressp" location="../fmwconfig">
<description>File Based Credential Store Service Instance</description>
</serviceInstance>
<serviceInstance name="srccredstore" provider="credstoressp" location="./">
<description>File Based Credential Store Service Instance2</description>
</serviceInstance>
</serviceInstances>
<jpsContexts default="myDest">
<jpsContext name="myDest">
<serviceInstanceRef ref="credstore"/>
</jpsContext>
<jpsContext name="mySrc">
<serviceInstanceRef ref="srccredstore"/>
</jpsContext>
</jpsContexts>
</jpsConfig>
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 2 : Create Framework Application
Create the Model objects
ADF Business Component View Objects that
abstract data access to the OE schema
Provides access to data for the application
Create the View objects
JSF pages made up of page fragments
Tabs for navigation
Create the Controller
Java code to implement the
application logic
Four tabs created in the application
Supply Chain
Finance
Sales
Management
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 3 : Add Drop-Down Menu
One of the integration points in the application is an ADF drop-down menu,
that will drive changes in an embedded BI analysis
This is therefore created by dragging and dropping an ADF BC View Object onto
one of the pages to create a drop-down menu
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Embed BI Content in the Application
Drag and drop analyses, dashboard, dashboard pages or KPI watchlists
from the catalog connection
Connect any analyses with filters to data controls on the page, to pass parameters
3
1
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 4 : Pass Context from BI via QDR
As well as receiving parameters, BI objects can pass parameters (or context)
Passed as an ADF contextual event, with a QDR (qualified data reference) as payload
QDR then has to be parsed to retrieve dimension values
{"_m":[{"_g":{"%22Warehouses%20Dim%22.%22Warehouse
%20Name%22":["Mexico%20City"]}},{"_g":
{"%22Products%20Dim%22.%22Product%20ID%22":
[3167]}},{"_g":{"%22Products%20Dim%22.%22Product
%20Name%22":["Manual%20-%20Vision%20OS/2.x"]}},
{"_g":{"%22Orders%20Fact%22.%22Quantity%20Ordered
%22":[216]} ... }}
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Enabling ADFContextualEvent in OBIEE 11.1.1.5
Passing ADF contextual events is a hidden parameter in OBIEE 11.1.1.5
Add the following entry to the instanceconfig.xml file:
<ActionLinks>
<EnableADFContextualEvent>true</EnableContextualEvent>
</ActionLinks>
Then a new action type will become
available when creating action links
Does not take parameters, and
passes values of all dimensions
through the QDR
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Detecting ADF Contextual Event
Add event details to the page definition that contains the ADF object that will
detect the ADF contextual event
Give the event a name and a consumer handler name
You will detect this in the next step
<eventMap xmlns="http://xmlns.oracle.com/adfm/
contextualEvent">
<event name="handleBIContextualEvent">
<producer region="*">
<consumer handler="receiveBiQDREvent">
<parameters>
<parameter name="qdr" value="$
{payLoad}"/>
</parameters>
</consumer>
</producer>
</event>
</eventMap>
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Parsing the ADF Contextual Event QDR
The QDR then has to be parsed to retrieve the dimension values
Performed by Java code inside a Javabean
public void receiveBiQDREvent(String incomingPayload) {
int index0 = incomingPayload.indexOf("%22Warehouses%20Dim
%22.%22Warehouse%20Name%22");
int index1 = incomingPayload.indexOf("]}", index0);
String warehouseName = incomingPayload.substring(index0 + 49,
index1 - 1);
warehouseName = warehouseName.replaceFirst("%20", " ");
Integer warehouseId = 0;
DCBindingContainer dcBc =
ADFUtils.getDCBindingContainer();
OperationBinding ob =
dcBc.getOperationBinding("getWarehouseIdByName");
index0 = incomingPayload.indexOf("%22Products%20Dim
%22.%22Product%20ID%22");
index1 = incomingPayload.indexOf("]}", index0);
String productId = incomingPayload.substring(index0 + 42,
index1);
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 5 : Implement Form & Pass QDR
A form was added to the ADF application, to allow inventory items to be ordered
Shows how a transactional element can be added to the application
Can be used in isolation, and will be connected to the inventory management BI object
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Connecting the ADF Form to the BI Analysis QDR Results
The QDR from the BI analysis processed earlier is used to set values for the form
if (dcIb != null) {
ob.getParamsMap().put("name", warehouseName);
warehouseId = (Integer)ob.execute();
dcIb.setCurrentRowWithKeyValue(warehouseId.toString());
dcIb = dcBc.findIteratorBinding("ProductsView1Iterator");
dcIb.setCurrentRowWithKeyValue(productId);
ob = dcBc.getOperationBinding("getQuantityOnHand");
ob.getParamsMap().put("productId", productId);
ob.getParamsMap().put("warehouseId", warehouseId);
Integer quantityOnHand = (Integer)ob.execute();
ADFUtils.setBoundAttributeValue("stockLevelAttr", quantityOnHand);
AdfFacesContext.getCurrentInstance().addPartialTarget(warehouseChoiceList);
AdfFacesContext.getCurrentInstance().addPartialTarget(orderingForm);
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Connecting the ADF Form to the Transactional Database
When the form submit button is pressed, stock is re-ordered & reflected in BI analysis
Request Restock
public void requestRestock(ActionEvent actionEvent) {
DCBindingContainer dcBc = ADFUtils.getDCBindingContainer();
OperationBinding ob = dcBc.getOperationBinding("storeQuantityOnHand");
Integer result = (Integer)ob.execute();
ADFUtils.setBoundAttributeValue("stockLevelAttr", result);
}
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
ADF/OBIEE Integration Step 6 : Deploy to WebLogic Server & Test
Complete application is then deployed to the WLS server
For the example, it is deployed to the OBIEE 11g WLS server
In real-world, OBIEE WLS is limited use and you will need to use separate server
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Demonstration
ADF and OBIEE Integration
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
Experiences, and Lessons Learned
Check versions: Only certain JDev versions are compatible with OBIEE 11g
Dont assume all versions will work; also this restricts use of WebCenter etc
This is very new functionality, and is not very well documented
ADF Contextual Events is not documented (or the documents are incorrect)
The main customer for these features is the Fusion Apps, not us
Beware of complexities around things like security, credentials, deploying libraries etc
Recommend that you have a dialog with us, or with Oracle development
Be prepared to spend time on getting the UI correct, and for debugging interactions
Consider how best to apply BI within the application
Dont just dump analyses into the application
Think about how you can use BI contextually to add insight to the applicationT
Think in terms of sensors, workflows, what is the user trying to achieve?
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
More Information
Thank you for attending this presentation
More information can be found at http://www.rittmanmead.com
Contact us at info@rittmanmead.com or mark.rittman@rittmanmead.com
Look out for our book, Oracle Business Intelligence Developers Guide due Q1 2012
Follow-us on Twitter (@rittmanmead) or Facebook (facebook.com/rittmanmead)
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11
OBIEE/ADF Integration using the Action Framework
Mark Rittman, Technical Director, Rittman Mead
UKOUG Conference, Birmingham 2011
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com
Saturday, 10 December 11