1
<Insert Picture Here>
Convert Oracle Reports, Crystal and Actuate to Oracle BI Publisher
Agenda
Why convert to BI Publisher? Conversion Plan Convert Oracle Reports Convert Crystal Reports Convert Actuate
<Insert Picture Here>
Why Convert to BI Publisher?
Simplified Report Maintenance
Separate data logic, layout & translation benefits
greater flexibility and reuse fewer reports are easier to maintain optimize data extraction and document generation process
Data Logic
Layout
BI Publisher
Translation
Report output
Gallup
Better Managed
Challenge 200+ Crystal Reports Duplicate reports Hard to use & manage Results 30 Publisher reports (85% reduction) 3 months w/ one f/t report developer
Why Convert to BI Publisher ?
Faster Development
User creates layout with desktop tools IT builds data model
Report Templates
XML
Multiple Data Sources
Report Outputs
6
MasterCard Worldwide
Faster, Easier Development
Challenge 90 days and 3 people (incl. 3rd party vendor) to implement POs 50 Operating Units Result 3 days and 1 person to implement POs 12x faster w/ 1 person
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
10
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
11
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
12
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
13
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
14
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
15
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
16
Why Convert to BI Publisher ?
Single Solution for All Documents
Invoices Correspondence Purchase Orders Shipping Labels Government Forms EFT & EDI Checks Operational Reports Financial Statements Interactive Reports
17
Agenda
Why convert to BI Publisher? Conversion Plan Convert Oracle Reports Convert Crystal Reports Convert Actuate
<Insert Picture Here>
18
Conversion Plan
Analyze reports
Categorize reports by Data Categorize reports by Complexity Evaluate the report size Reduce number of reports
Create Data Model to handle Data design Create RTF Template to handle Layout design Convert data handling functions into database functions Convert layout formatting functions into XSL/java functions
19
Agenda
Why convert to BI Publisher? Conversion Plan Convert Oracle Reports Convert Crystal Reports Convert Actuate
<Insert Picture Here>
20
Convert Oracle Reports
Prerequisites
Oracle Reports 9i
Source reports must eventually be in Oracle Reports XML format. Oracle Reports XML format is supported in Oracle Reports 9i and above If your source reports are not in Oracle Reports XML format, the conversion utility will do this conversion automatically. However, this requires Oracle Reports Designer 9i or later on the same machine where you will do the conversion.
Setting classpath
collections.jar xmlparserv2-904.jar or xmlparserv2.jar xdocore.jar aolj.jar Versioninfo.jar
JDK 1.5 or higher
21
Convert Oracle Reports
Conversion Steps
Target Directory
Report
BI Publisher Server
Report
.xdm
.xdm
Steps
Configure data source in BI Publisher Server Run the Conversion Assistant with option to upload report to BI Publisher Server Compile the PL/SQL package manually into Database View Report Check Log file for any unhandled features
RDF XML Oracle Report To BI Publisher Conversion Assistant
Data Model
.xdmz
Data Model
Upload to Catalog .xdo .xdo
Reports 9i rwconverter Oracle Home
Report
RTF Template
Report .xdoz
RTF Template
Oracle Report RDF files
log
plsql
Compile Log files .PLS files
Database
22
Convert Oracle Reports
Conversion Assistant
23
Agenda
Why convert to BI Publisher? Conversion Plan Convert Oracle Reports Convert Crystal Reports Convert Actuate
<Insert Picture Here>
24
Convert Crystal Reports
Conversion Steps
Connection and Data Model Conversion
1
Data Connection Data Source Data definition SQL, Function, Stored Procedure
Layout Conversion
2 3
Data Model
+
XML Data Blank or Crystal RTF output
SQL, Data Template
Parameters
Parameters Functions & Formulae
Functions & Formulae
Template Builder
Crystal Reports
BI Publisher RTF Template
25
Convert Crystal Reports
Handling Sub Reports
Report
Sub Report
Data Model with Concatenated Data Sets
Unlinked Sub Report
Sub Report with Parent Child Relationship
Data Model with Data Sets linked by Group or Element Link
Linked Sub Report
Sub Report displaying layout conditionally or based on Parameter
Data Model
Sub Template
On Demand Sub Report Data Model
Use Hyperlink in RTF
Crystal Reports with Sub Reports
BI Publisher
26
Convert Crystal Reports
Step-by-step conversion of a sample Crystal report
Crystal Report at a glance
Banded Report Group by Department and Manager Subtotal Salary by group Data does not break across page
27
Sample Report Conversion
Convert Connection and Data Model
Convert Connection
28
Sample Report Conversion
Convert Connection and Data Model
Convert Connection
29
Sample Report Conversion
Convert Connection and Data Model
Convert Crystal SQL to BI Publisher Data Model
30
Sample Report Conversion
Convert Connection and Data Model
Convert Crystal SQL to BI Publisher Data Model
31
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
32
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
33
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
34
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
35
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
36
Sample Report Conversion
Convert Connection and Data Model
Convert Parameters
SELECT "Employee"."ManagerID", "Department"."Name" as DepartmentName, "Employee"."EmployeeID", "Contact"."FirstName", "Contact"."LastName","Employee"."Title", "Employee"."Hiredate", "EmployeePayHistory"."Rate", "Contact_1"."FirstName" MgrFirstName, "Contact_1"."LastName" MgrLastName FROM ((("AdventureWorks"."HumanResources"."EmployeePayHistory" "EmployeePayHistory" INNER JOIN (("AdventureWorks"."HumanResources"."Department" "Department" INNER JOIN "AdventureWorks"."HumanResources"."EmployeeDepartmentHistory" "EmployeeDepartmentHistory" ON "Department"."DepartmentID"="EmployeeDepartmentHistory"."DepartmentID") INNER JOIN "AdventureWorks"."HumanResources"."Employee" "Employee" ON "EmployeeDepartmentHistory"."EmployeeID"="Employee"."EmployeeID") ON "EmployeePayHistory"."EmployeeID"="Employee"."EmployeeID") INNER JOIN "AdventureWorks"."Person"."Contact" "Contact" ON "Employee"."ContactID"="Contact"."ContactID") INNER JOIN "AdventureWorks"."HumanResources"."Employee" "Employee_1" ON "Employee"."ManagerID"="Employee_1"."EmployeeID") INNER JOIN "AdventureWorks"."Person"."Contact" "Contact_1" ON "Employee_1"."ContactID"="Contact_1"."ContactID" where "EmployeePayHistory"."ModifiedDate" = (select max("EmployeePayHistory"."ModifiedDate") from "EmployeePayHistory" where "EmployeePayHistory"."EmployeeID"="Employee"."EmployeeID") and "Department"."Name" = isNull(:Department,"Department"."Name")
ORDER BY "Department"."Name", "Employee"."ManagerID", "Employee"."EmployeeID"
37
Sample Report Conversion
Convert Connection and Data Model
Convert formulas
38
Sample Report Conversion
Convert Connection and Data Model
Convert formulas
CREATE FUNCTION f_AnnualSalary ( @Val1 float, @Val2 varchar(50)) RETURNS float AS BEGIN declare @sal float if datepart(yyyy,@Val2) < 2000 (select @sal= @Val1 * 8 * 300 + @Val1 * 20) else if datepart(yyyy,@Val2) >= 2000 and datepart(yyyy,@Val2) < 2005 (select @sal=@Val1 * 8 * 300 + @Val1 * 15) else (select @sal=@Val1 * 8 * 300 + @Val1 * 10) RETURN (@sal) END
39
Sample Report Conversion
Convert Connection and Data Model
Convert formulas
SELECT "Employee"."ManagerID", "Department"."Name" as DepartmentName, "Employee"."EmployeeID", CREATE FUNCTION f_AnnualSalary "Contact"."FirstName" + ' ' + "Contact"."LastName" EmpName, ( @Val1 float, @Val2 varchar(50)) RETURNS float AS BEGIN "Employee"."Title", "Employee"."Hiredate" as EmpHireDate, "EmployeePayHistory"."Rate" Rate, "Contact_1"."FirstName" + ' ' + "Contact_1"."LastName" Manager, "AdventureWorks"."dbo".f_annualsalary("EmployeePayHistory"."Rate", "Employee"."Hiredate") as AnnualSalary
FROM ((("AdventureWorks"."HumanResources"."EmployeePayHistory" "EmployeePayHistory" INNER JOIN declare @sal float (("AdventureWorks"."HumanResources"."Department" "Department" INNER JOIN "AdventureWorks"."HumanResources"."EmployeeDepartmentHistory" "EmployeeDepartmentHistory" ON if datepart(yyyy,@Val2) < 2000 "Department"."DepartmentID"="EmployeeDepartmentHistory"."DepartmentID") INNER JOIN (select @sal= @Val1 * 8 * 300 + @Val1 * 20) "AdventureWorks"."HumanResources"."Employee" "Employee" ON "EmployeeDepartmentHistory"."EmployeeID"="Employee"."EmployeeID") ON else "EmployeePayHistory"."EmployeeID"="Employee"."EmployeeID") INNER JOIN if datepart(yyyy,@Val2) >= 2000 and datepart(yyyy,@Val2) < 2005 ON "Employee"."ContactID"="Contact"."ContactID") INNER JOIN "AdventureWorks"."Person"."Contact" "Contact" "AdventureWorks"."HumanResources"."Employee" "Employee_1" ON (select @sal=@Val1 * 8 * 300 + @Val1 * 15) "Employee"."ManagerID"="Employee_1"."EmployeeID") INNER JOIN "AdventureWorks"."Person"."Contact" else "Contact_1" ON "Employee_1"."ContactID"="Contact_1"."ContactID" (select @sal=@Val1 *"EmployeePayHistory"."ModifiedDate" = (select max("EmployeePayHistory"."ModifiedDate") from where 8 * 300 + @Val1 * 10) "EmployeePayHistory" where "EmployeePayHistory"."EmployeeID"="Employee"."EmployeeID") and RETURN (@sal) "Department"."Name" = IsNull(:department, "Department"."Name") END ORDER BY "Department"."Name", "Employee"."ManagerID", "Employee"."EmployeeID"
40
Sample Report Conversion
Convert Layout
41
Sample Report Conversion
Convert Layout
Add Group Total for AnnualSalary
42
Sample Report Conversion
Convert Layout
Add Group Total for AnnualSalary Use Microsoft Word Native feature Allow row to break across pages to handle Keep Group Together feature of Crystal Report
43
Sample Report Conversion
Convert Layout
Use Microsoft Word Native Useformatting features to match table Microsoft Word Native feature Allow row to break across pages column width, height, shade, font to handle Keep Group Together etc. feature of Crystal Report
Add Group Total for AnnualSalary Use Microsoft Word Header and Footer for Report Page Headers and Footers
44
Sample Report Conversion
Side by side comparison
Crystal Report Output
BI Publisher Report Output
45
Agenda
Why convert to BI Publisher? Conversion Plan Convert Oracle Reports Convert Crystal Reports Convert Actuate
<Insert Picture Here>
46
Convert Actuate Report
Layout Conversion
Actuate Design File (ROD)
Data Conversion
Siebel Tools Objects Business Objects Views IO Creator Tool Integration Object
Actuate Output File (BAS) Layout Conversion Tool
View Reports Reports Sub Reports Fields
Integration Components Integration Fields
RTF Template
XML Data
Actuate Report Conversion Assistant
47
Stay Connected with BI Publisher
http://www.youtube.com/bipublisher http://twitter.com/oracleEPMBI http://www.linkedin.com/groups?mostPopular=&gid=49643
http://www.facebook.com/OracleEPMBI?v=wall
48
Appendix
Converting Reports from Oracle Reports to Oracle BI Publisher - Report Designer s Guide - http://www.oracle.com/technology/products/xml-publisher Siebel Reports 8.1.1 Bookshelf http://download.oracle.com/docs/cd/E14004_01/books/Reports/ReportsTOC.ht ml Actuate Conversion Assistant Download https://metalink3.oracle.com/od/faces/index.jspx patch # 8288024 Converting reports from Business Objects Crystal Reports to Oracle BI Publisher http://download.oracle.com/otndocs/xmlp/CrystaltoBIP.pdf Reports6i to BIP GUI Conversion Utilities Ike Wiggins Blog http://bipublisher.blogspot.com/2009/05/bi-publisher-reports6i-to-bip.html <Insert Picture Here>
49
More Information
search.oracle.com
BI Publisher
or
http://www.oracle.com/technology/products/xml-publisher
50
51
The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracles products remains at the sole discretion of Oracle.
52
53