BI Publisher is the Reporting Platform for Siebel
BI Publisher has been introduced to Siebel users since its Release 8.1.1 as a new reporting platform replacing the older Actuate base reporting platform. It is tightly integrated with the Siebel architecture and its applications. The users can run and manage their reports with BI Publisher from Siebel applications UI.
The BI Publisher integration patch for older releases like 7.7, 7.8, 8.0 are currently planned. The detail can be found from a metalink note.
So now you can use BI Publisher to start developing new reports and taking advantage of the a lot of benefits that BI Publisher offers. But how should we do with the existing reports that have been developed with the older Actuate base platform?
That is the question I’d like to address by discussing how to convert the existing Actuate base reports to BI Publisher base reports in Siebel applications. But, before I start talking about the reports conversion, let’s take a look at how the new Siebel reporting works with BI Publisher first.
Two Different Modes for BI Publisher Integration
There are two different ways of integrating BI Publisher as Siebel reporting platform. One is for Connected mode (Siebel Web UI) and another is for Disconnected mode (Siebel Mobile client and Developer web client). This is only a difference in terms of the way BI Publisher is integrated technically and how the reports are generated inside the Siebel application. So from the end user point of view there is no difference when they request to run the reports.
The Connected mode utilizes BI Publisher Server while the Disconnected mode uses internally embedded version of BI Publisher reporting engine, which is a set of Java libraries. I will describe the two different Siebel Reports Architectures and Reporting flow below.
Siebel Reports Architecture and Report Flow Generation for Connected Mode
The Siebel Web Client allows you to run reports in connected mode. When you try to run the reports, the related Integration Objects, which provide the ability to obtain Siebel data in XML format, extracts the relevant data from the Siebel database. A Siebel reporting server (XMLP Report Server Component) issues an outbound Web service call and pass the XML data to a standalone BI Publisher Server. The BI Publisher Server accepts the XML data file, convert a registered RTF Template to XSL-FO template, marry the XML data with the template, and generate a final report output such as PDF. The BI Publisher Server then sends the report output file back to the XMLP Report Server Component using an outbound Web service call. The report is stored in the Siebel File System and then displayed in the Siebel UI.
Siebel Reports Architecture Diagram for Connected Mode
Here is the Siebel Reports Architecture diagram.
- A report generation event is triggered from a view in the Siebel user interface
- The Siebel Application Object Manager (AOM) routes the event to Siebel database
- The Server Request Broker (SRBroker) and the Server Request Processor (SRProc) monitor the request and pass it to the XMLP Report Server Component through the Report Driver Service
- The XMLP Driver Service makes a call to the XMLP Data Service
- The data service requests data to the EAI Siebel Adapter
- The EAI Siebel Adapter fetches data from the database
- The EAI Siebel Adapter returns the data
- The XMLP Data Service returns control back to XMLP Driver Service through the data service
- The XMLP Driver Service again makes a call to the XMLP Adapter Service
- The XMLP Adapter makes a proxy business service
- The Proxy Business service makes a Web service call to the BI Publisher Server to execute the report
- The BI Publisher Server executes report generation, returns back generated report binary data
- The control comes back to the XMLP Adapter Service
- The XMLP Adapter Service then downloads the report and creates the file in the Siebel File System
- And it displays the report in the UI
Siebel Reports Architecture and Report Flow Generation for Disconnected Mode
The mobile clients—Siebel Mobile Web Client and Siebel Developer Web Client, allow you to run Siebel Reports interactively in disconnected mode.
In disconnected mode, the BI Publisher Server is a logical component that uses the BI Publisher XDO Engine to manage report generation. The XMLP Report Business Service is the interface to this logical component that instantiates the EAI Java Business Service to load the JAR files to the JVM (Java Virtual Machine). The BI Publisher XDO Engine then processes the XML data, XSL template, and XLIFF files to output the report.
So again, even with this mode BI Publisher is used only to generate the final report output, not for the data generation part. The reporting data is generated by the Integration Object and the XML data and the relevant RTF Template file are passed to the BI Publisher XDO engine, which will generate a final report output.
Siebel Reports Architecture Diagram for Disconnected Mode
Here is the architecture diagram for Disconnected mode
- A report generation event is triggered from a view in the Siebel application.
- Data is fetched from the database by the EAI Siebel Adapter and stored as XML in the XMLP\DATA folder in the Siebel installation directory.
- A call is routed to the XMLP Report Java Business Service.
- The XMLP Report Business Service instantiates the EAI Java Business Service, and loads the JAR files to the JVM (Java Virtual Machine).
- The BI Publisher XDO Engine loads the XDO classes from the JAR files, and then the XML, XLIFF, and XSL template are given as input to the XDO classes for generating the report. The report is
temporarily stored in XMLP\REPORTS, and then sent to the Siebel File System.
- The control then goes back to the Siebel user interface where the generated report appears.
So this is how Siebel has integrated BI Publisher for each mode (Connected vs. Disconnected) and how the reports are generated within the integration from a technical perspective. Next, I will talk about how to run the BI Publisher reports within Siebel. Stay tuned!