OBIEE/ADF Integration using the Action Framework

Mark Rittman, Technical Director, Rittman Mead Andrejus Baranovskis, CEO, Red Samurai Consulting Oracle OpenWorld 2011, San Francisco, October 2011
T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www.rittmanmead.com

Saturday, 1 October 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, 1 October 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, 1 October 11

Oracle Business Intelligence 11g (11.1.1.5)
• Oracle’s 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, 1 October 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, 1 October 11

or access through MS Office T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. distribute. 1 October 11 .Web-Based Delivery of Analytics and Analysis • Users access information and analytics through role-based dashboards • Can also publish reports to PDF.rittmanmead.com Saturday.com W: www.

rittmanmead.Web-Based Authoring Tools for “Power Users” • Reports and analyses are created using web-based tools • Point-and-click creation of tables. pivot-tables. gauges T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www. maps. 1 October 11 .com Saturday. charts.

1 October 11 . charts. pivot-tables. maps.com Saturday. gauges T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.rittmanmead.com W: www.Web-Based Authoring Tools for “Power Users” • Reports and analyses are created using web-based tools • Point-and-click creation of tables.

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. 1 October 11 .com W: www.rittmanmead.All Built Using Shared “Common Enterprise Information Model” • All reporting tools can take their data from a shared metadata layer • Defined as dimensional model.com Saturday.

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.rittmanmead. 1 October 11 .com W: www.com Saturday.Based on Fusion Middleware 11g Platform • Built on a foundation of Oracle Fusion Middleware 11g • Common security (Oracle Identity Management.

rittmanmead.com Saturday.Oracle Application Development Framework (ADF) • Oracle’s 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. 1 October 11 .

com Saturday. 1 October 11 .. 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.a.ADF Architecture • Aim is to minimize the amount of Java code you write (a.com W: www.k.rittmanmead.

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.rittmanmead.1. 1 October 11 .1.com Saturday.5+ Integration Points • OBIEE Analyses.OBIEE 11g and ADF 11. 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.com W: www.

1 October 11 . analysis. collaboration all in one hybrid application T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.rittmanmead.com Saturday. using Fusion Middleware and a SOA architecture • BI components embedded in all pages • Workflow. data entry.Building Blocks for the Oracle Fusion Applications • The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE • ADF applications.com W: www.

rittmanmead. 1 October 11 . collaboration all in one hybrid application T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. data entry.com Saturday. using Fusion Middleware and a SOA architecture • BI components embedded in all pages • Workflow.com W: www.Building Blocks for the Oracle Fusion Applications • The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE • ADF applications. analysis.

rittmanmead.com Saturday. analysis. collaboration all in one hybrid application T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www. data entry. using Fusion Middleware and a SOA architecture • BI components embedded in all pages • Workflow. 1 October 11 .Building Blocks for the Oracle Fusion Applications • The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE • ADF applications.

1 October 11 .com Saturday.rittmanmead. analysis. collaboration all in one hybrid application T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www. using Fusion Middleware and a SOA architecture • BI components embedded in all pages • Workflow. data entry.Building Blocks for the Oracle Fusion Applications • The Oracle Fusion Applications are built using Oracle ADF + Oracle BI EE • ADF applications.

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.com Saturday.rittmanmead.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. 1 October 11 .

1 October 11 .com W: www.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.rittmanmead.com Saturday.

Why is OBIEE of Interest to ADF Developers? • Organizes reports into a catalog.rittmanmead. with full report authoring tools • Metadata (semantic) layer. conditions and actions T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com W: www. pivot tables • New Action Framework in OBIEE 11g integrates with web services. 1 October 11 .com Saturday. maps. PSFT. Siebel etc • Full range of visualizations including scorecards. KPIs. Fusion Applications. adds business context and integration to data • Pre-built integration with EBS. ADF events etc • Ability to connect to analytic data sources such as ‣ Essbase ‣ TimesTen ‣ Teradata ‣ Oracle OLAP • BI Automation through agents.

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. server-side scripts and other functions • Part of the Action Framework ‣ Detect business events through Agents ‣ Analyze through BI dashboards.The OBIEE 11g Action Framework • Provides the ability for OBIEE to call web service and other application functionality • Define actions that leverage web services. 1 October 11 . analyses.rittmanmead.com W: www.com Saturday.

1 October 11 .rittmanmead.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. interactions. not a BI platform T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. pivots.com W: www. charts are built on • But they do not come with a metadata layer • And they are basic. scorecards. actions • No ability to leverage Essbase and other non-SQL sources • Building blocks. they do not support KPIs.com Saturday.

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.rittmanmead. actions from ADF application T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.Integration Example: A Composite ADF / OBIEE 11g Application • To demonstrate how this integration works.com W: www.com Saturday. 1 October 11 .

5 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.Combined ADF / OBIEE Application Built on OFM 11. 1 October 11 .1.1.com W: www.rittmanmead.com Saturday.

rittmanmead.Combined ADF / OBIEE Application Built on OFM 11.1.com W: www.5 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. 1 October 11 .com Saturday.1.

rittmanmead.com Saturday.1. 1 October 11 .5 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.1.com W: www.Combined ADF / OBIEE Application Built on OFM 11.

com W: www. graphs etc 3. add calculations. Create dashboards that implement these objects T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. Create key performance indicators & KPI watchlist 4. Create agents and actions 5. 1 October 11 .Steps to Create the BI Content 1. Create the Oracle BI Repository (the metadata layer) 2.rittmanmead. Create analyses against repository data.com Saturday.

views and other objects from the OE Sample Schema • Create joins and keys in the Physical layer • Define logical dimensional model.com Saturday.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.rittmanmead. 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. 1 October 11 .

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. 1 October 11 .com W: www. 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.rittmanmead.Adding ADF Business Components View Objects as a Data Source • Using OBIEE 11g.com Saturday.

rittmanmead. graphs.com W: www. views. calculations and other criteria • Add tables.com Saturday.Creating the BI Content Step 2 : Creating Analyses • Analyses (reports) are then created using the Business Intelligence application • Create filters. gauges • Save into the Presentation Services Catalog 1 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. 1 October 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.com W: www. gauges • Save into the Presentation Services Catalog 1 2 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. views.com Saturday. 1 October 11 .rittmanmead. graphs.

com W: www. calculations and other criteria • Add tables. 1 October 11 . graphs. views.Creating the BI Content Step 2 : Creating Analyses • Analyses (reports) are then created using the Business Intelligence application • Create filters. gauges • Save into the Presentation Services Catalog 3 1 2 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.rittmanmead.com Saturday.

1 October 11 .com W: www. Thresholds (states) • KPIs can then be organized into KPI watchlists.com Saturday. Target measure ‣ Dimensionality.rittmanmead. 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. KPIs can be created • Made up of four elements ‣ Actual measure.Creating the BI Content Step 3 : Create KPIs and KPI Watchlist • Using metrics and dimensions defined in the Oracle BI Repository.

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. Target measure ‣ Dimensionality.com Saturday. KPIs can be created • Made up of four elements ‣ Actual measure.com W: www. Thresholds (states) • KPIs can then be organized into KPI watchlists.rittmanmead. 1 October 11 .Creating the BI Content Step 3 : Create KPIs and KPI Watchlist • Using metrics and dimensions defined in the Oracle BI Repository.

rittmanmead.com W: www. 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.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.com Saturday. 1 October 11 .

executes the web service asynchronously via Action Service Java component in OBIEE 11g 2 1 3 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.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.com W: www.com Saturday.rittmanmead. 1 October 11 .

rittmanmead. 1 October 11 .com Saturday. 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.Creating the BI Content Step 5 : Creating Dashboards • All content is then added to a BI dashboard • Analyses.com W: www.

1.com W: www.ADF Application Overview • Oracle Application Developer Framework (ADF) application built using JDeveloper 11. 1 October 11 .rittmanmead. 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.1.1.5 (11.2 not compatible with BI objects in ADF page) • Created using the Fusion Web Application application template ‣ MVC (Model.com Saturday. View.

com Saturday. sales.com W: www.Initial Application Design . 1 October 11 .rittmanmead. and ADF transactional elements T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.Powerpoint Mockup • Initial design was mocked-up in Powerpoint • Four-tab application focused around supply chain. finance. management • Each page will have elements of both BI.

com W: www.com Saturday. Create the framework application 3.rittmanmead. Deploy to WLS server T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. 1 October 11 . Add the drop-down menu 4. Create the Catalog Connection 2. Pass Context from BI to ADF via QDR 6. Implement the transactional form & pass QDR values 7. Embed the BI content in the application 5.ADF / OBIEE Integration Tasks 1.

com W: www.5 allows you to create a connection to the OBIEE Presentation Services Catalog • Once connected.1.rittmanmead. 1 October 11 .1.ADF/OBIEE Integration Step 1 : Adding the Catalog Connection • JDeveloper 11.com Saturday. can then drag and drop BI objects into the application 1 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.

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 1 2 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com Saturday.ADF/OBIEE Integration Step 1 : Adding the Catalog Connection • JDeveloper 11.1.com W: www.rittmanmead. 1 October 11 .

can then drag and drop BI objects into the application 1 3 2 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.1.com W: www.5 allows you to create a connection to the OBIEE Presentation Services Catalog • Once connected.1. 1 October 11 .ADF/OBIEE Integration Step 1 : Adding the Catalog Connection • JDeveloper 11.com Saturday.rittmanmead.

sso file from the local JDeveloper project to the migration directory.1\scripts to the above folder • 3. Create [Middleware_Home]\user_projects\bifoundation_domain\migration • 2. Copy all scripts from [Middleware_Home]\oracle_common\modules\oracle.xml -src mySrc -dst myDest T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. Copy the cwallet.Credentials / Security Integration Issues • When you add the catalog connection. From command line execute the below command.xml file to define the migration process • 4.1.rittmanmead. 1 October 11 .com W: www.cmd migrateSecurityStore. 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. • 5.jps_11.com Saturday. Create a config.py -type credStore -configFile config. to perform the migration C:\Middleware\oracle_common\common\bin\wlst.

rittmanmead.com W: www.xsd" schema-major-version="11" schema-minor-version="1"> <serviceProviders> <serviceProvider type="CREDENTIAL_STORE" name="credstoressp" class="oracle./"> <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.SspCredentialStoreProvider"> <description>SecretStore-based CSF provider</description> </serviceProvider> </serviceProviders> <serviceInstances> <serviceInstance name="credstore" provider="credstoressp" location=".com/oracleas/schema/11/jps-config-11_1.security.internal.com/oracleas/schema/11/jps-config-11_1.Config.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns..com Saturday.ssp./fmwconfig"> <description>File Based Credential Store Service Instance</description> </serviceInstance> <serviceInstance name="srccredstore" provider="credstoressp" location=".0" encoding="UTF-8" standalone='yes'?> <jpsConfig xmlns="http://xmlns.w3.jps.oracle.py script <?xml version="1.XML File to Define Credentials Migration • Used to define what is migrated by the migrateSecurityStore.oracle.credstore. 1 October 11 .xsd" xmlns:xsi="http://www.

rittmanmead.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. 1 October 11 .com Saturday.

1 October 11 . 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 Saturday.ADF/OBIEE Integration Step 3 : Add Drop-Down Menu • One of the integration points in the application is an ADF drop-down menu.com W: www.rittmanmead.

com W: www. dashboard. to pass parameters 2 1 3 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.com Saturday. 1 October 11 .Embed BI Content in the Application • Drag and drop analyses. dashboard pages or KPI watchlists from the catalog connection • Connect any analyses with filters to data controls on the page.rittmanmead.

with a QDR (“qualified data reference”) as payload • QDR then has to be parsed to retrieve dimension values {"_m":[{"_g":{"%22Warehouses%20Dim%22.com W: www. }} T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. BI objects can pass parameters (or “context”) • Passed as an ADF contextual event..x"]}}.%22Product %20Name%22":["Manual%20-%20Vision%20OS/2.rittmanmead.com Saturday.{"_g": {"%22Products%20Dim%22. {"_g":{"%22Orders%20Fact%22.. 1 October 11 .%22Warehouse %20Name%22":["Mexico%20City"]}}.ADF/OBIEE Integration Step 4 : Pass Context from BI via QDR • As well as receiving parameters.%22Product%20ID%22": [3167]}}.{"_g":{"%22Products%20Dim%22.%22Quantity%20Ordered %22":[216]} .

1.1.com Saturday.Enabling ADFContextualEvent in OBIEE 11. 1 October 11 .xml file: <ActionLinks> <EnableADFContextualEvent>true</EnableContextualEvent> </ActionLinks> • Then a new action type will become available when creating action links • Does not take parameters.com W: www.5 • Passing ADF contextual events is a “hidden parameter” in OBIEE 11. and passes values of all dimensions through the QDR T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.rittmanmead.1.1.5 • Add the following entry to the instanceconfig.

com W: www.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. 1 October 11 .com Saturday.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.rittmanmead.oracle.

substring(index0 + 49. OperationBinding ob = dcBc. warehouseName = warehouseName. index0). " "). index1 . index1 = incomingPayload.getDCBindingContainer().substring(index0 + 42.indexOf("]}".indexOf("]}".%22Product%20ID%22"). index0). 1 October 11 .com W: www. T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.%22Warehouse%20Name%22").1).indexOf("%22Products%20Dim %22. DCBindingContainer dcBc = ADFUtils. Integer warehouseId = 0.rittmanmead.replaceFirst("%20". String warehouseName = incomingPayload. String productId = incomingPayload.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. int index1 = incomingPayload.getOperationBinding("getWarehouseIdByName").com Saturday. index1). index0 = incomingPayload.indexOf("%22Warehouses%20Dim %22.

rittmanmead.com W: www.ADF/OBIEE Integration Step 5 : Implement Form & Pass QDR • A form was added to the ADF application. 1 October 11 .com Saturday. and will be connected to the inventory management BI object T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. to allow inventory items to be ordered • Shows how a transactional element can be added to the application • Can be used in isolation.

warehouseName). productId).put("warehouseId". ob. dcIb = dcBc. dcIb. dcIb. quantityOnHand).getParamsMap(). AdfFacesContext.execute().getOperationBinding("getQuantityOnHand").put("name". ADFUtils.com Saturday.toString()).setBoundAttributeValue("stockLevelAttr".com W: www.setCurrentRowWithKeyValue(warehouseId. Integer quantityOnHand = (Integer)ob.findIteratorBinding("ProductsView1Iterator").getCurrentInstance().put("productId".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. warehouseId).addPartialTarget(orderingForm). warehouseId = (Integer)ob.getCurrentInstance(). ob = dcBc. 1 October 11 . AdfFacesContext.addPartialTarget(warehouseChoiceList).getParamsMap().setCurrentRowWithKeyValue(productId).rittmanmead. T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.getParamsMap(). ob.execute().

Integer result = (Integer)ob. ADFUtils.getDCBindingContainer().execute().com W: www. OperationBinding ob = dcBc. 1 October 11 .getOperationBinding("storeQuantityOnHand"). } T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead.rittmanmead.com Saturday. result). stock is re-ordered & reflected in BI analysis Request Restock public void requestRestock(ActionEvent actionEvent) { DCBindingContainer dcBc = ADFUtils.setBoundAttributeValue("stockLevelAttr".Connecting the ADF Form to the Transactional Database • When the form submit button is pressed.

rittmanmead.com Saturday. 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.ADF/OBIEE Integration Step 6 : Deploy to WebLogic Server & Test • Complete application is then deployed to the WLS server ‣ For the example. 1 October 11 .com W: www.

credentials. 1 October 11 .com W: www. and for debugging interactions • Consider how best to apply BI within the application ‣ Don’t 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.com Saturday. 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. what is the user trying to achieve? T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. not us • Beware of complexities around things like security. and Lessons Learned • Check versions: Only certain JDev versions are compatible with OBIEE 11g ‣ Don’t assume all versions will work. or with Oracle development • Be prepared to spend time on getting the UI correct. deploying libraries etc ‣ Recommend that you have a dialog with us.rittmanmead. workflows.Experiences.

rittman@rittmanmead. 1 October 11 .com • Look out for our book.com Saturday.rittmanmead.More Information • Thank you for attending this presentation • More information can be found at http://www.com • Contact us at info@rittmanmead.com or mark.com W: www. “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.rittmanmead.

com W: www. 1 October 11 . Rittman Mead Andrejus Baranovskis. San Francisco.rittmanmead.com Saturday. Red Samurai Consulting Oracle OpenWorld 2011.OBIEE/ADF Integration using the Action Framework Mark Rittman. CEO. October 2011 T : +44 (0) 8446 697 995 or (888) 631 1410 (USA) E : enquiries@rittmanmead. Technical Director.