Monday, August 24, 2009

Actuate to BI Publisher Reports Conversion for Siebel – Part 1

Actuate to BI Publisher for Siebel

As you have seen in the previous posts the Siebel Reporting with BI Publisher architecture uses BI Publisher only for the reports layout generation, not for the data generation. It uses the Integration Objects, which are metadata objects in Siebel Business Applications that provide the ability to obtain Siebel data in XML format, within EAI Siebel Adapter to retrieve the data from the Siebel database. And this two layers of the report generation architecture is pretty much the same way as before with Actuate base reporting. Actuate has been used to handle the report layout with Actuate Design file (ROD) and generate report outputs based on data returned by the Integration Objects.

So the reports conversion will focus only for the layout part of the reports and that means you will take care of only the BI Publisher RTF Template side of business.

By converting the layout part of the report you can take advantage of BI Publisher’s easy and flexible development framework and better performance and scalability for the reports generation.

Conversion Process

Here is a list of steps required for the Actuate to BI Publisher reports conversion for Siebel.

  1. Obtain Actuate Report File
  2. Convert Actuate Report File to BI Publisher RTF Template File
  3. Review the converted file and Adjust/Update
  4. Upload the RTF Template and Register
  5. Associate the RTF Template with View

Reports Conversion Assistant Utility

When you start thinking about the conversion process, the first question would be if there is any conversion tool available or do we need to convert one report by one manually ? The answer is, Yes, there is a conversion tool available, which is called BI Publisher Actuate Reports Conversion Assistant. It converts the Actuate report files (BAS) to the BI Publisher RTF Template files.

How to Get the Conversion Assistant Utility?

You can get this tool from the metalink.

  1. Go to the metalink.
  2. Go to Patches & Downloads tab
  3. Click on the Oracle, Siebel and Hyperion Products link
  4. Click on Simple Search
  5. Enter patch number 8968224 in the Search by Patch Number/Name box
  6. Pick generic platform and click 'Go' (You should see files for download)

Before you start the conversion process make sure you have downloaded the above tool and locate to an appropriate folder.

How Much Can be Automatically Converted

The Conversion Assistant does the conversion for the basic objects but not for all. And often that you need to manually add or implement some of the functionality in the RTF Template files based on the original Actuate reports. This is due to different ways to achieve a same functionality between the two products (Actuate vs. BI Publisher).

You can find such objects that are not converted after the conversion by looking into the log file, which is also generated by the tool. The log file indicates the functions in the Actuate reports that are not converted with label names and you can find such label names in the generated RTF file with a tag like ‘<!--->’ as place holders.

Also, you want to review the report layout to see if the layout in the RTF template is matching the original report layout or newly defined reports layout requirements. In order to review the report layout you can preview the report with actual reporting data in a desired format such as PDF quite easily, instead of just looking at the RTF template, by using the BI Publisher MS Word Add-in tool called Template Builder.

How to Use the Conversion Assistant Tool?

The Actuate Reports Conversion Assistant is a Java command line tool and it requires JDK 1.5 or later. The conversion tool takes BAS file as an input therefore you need to generate the BAS file from the original ROD file first before you start the conversion. The below image illustrates the conversion workflow by the Conversion Assistant.

Conversison_Utility

The Conversion Assistant takes the following input parameters.

Parameter

Description

-i

Input file name – BAS file name

-o

Output file name – RTF Template fille name

-l

Log file name

And the syntax to convert a single report is:

run –i <bas filename> -o <output filename> -l <log filename>

You can also convert multiple files together and the syntax to convert multiple reports together is:

run –i <Folder_path_for_bas_files> -o <Folder_path_for_RTF_Files>

The above command will read all the files in the <Folder_path_for_bas_files> location and put the converted files with corresponding names in the <Folder_path_for_RTF_Files> location. By default a log file is created at location <Folder_path_for_RTF_Files>.

Review and Adjust Converted RTF Template

As mentioned above, the conversion assistant does the conversion from Actuate to BI Publisher RTF Template but in most cases it still requires manual adjustments. You can review the log file which indicates all the functions from the original Actuate report that are not converted. Also you can open the RTF Template file with the Template Builder (BI Publisher’s MS-Word Add-in tool), load the sample XML data file, and preview the report output to see if the final report output is meeting the business requirements. When you review the RTF Template file the followings are the typical items that requires such manual adjustments.

  • Layout
  • Formatting (Color, Number formatting, Date formatting, etc)
  • Calculation/Aggregation
  • Condition
  • Image (including company logo)

When you review the template files it is very important to compare with the newly defined requirements definition, which is agreed with business users who will consume the reports. There might be some logics or formatting in the report which are not relevant today’s business process. There might be some new requirements that are important today but not in the original report. Often that reports developers are given the original reports and they try to mimic the original reports for their adjustments and end up spending a lot of time for something that is not even required anymore. That’s why it is critical to have the requirement collection, analysis, and definition first even for this type of reports conversion project and make sure the all the developers who will work on the conversion process would crystal clearly understand the requirements and share how to address the gaps between the Actuate and BI Publisher.

How to Get XML Data File

One more thing for reviewing the report outputs to perform the manual adjustments. As mentioned above, you can use the Template Builder to preview the report outputs with sample data within MS-Word without connecting to the database or Siebel system. In order to preview the report outputs, you need to get a sample XML data file for each report first. You can generate the XML data file from the integration object for which you want to prepare a BI Publisher report. Here are the steps to obtain the XML data file.

  1. Login to Siebel application
  2. Navigate to the ‘Administration - BIP Reports’ screen, then ‘Sample Data File Generation’ view.
  3. In the Sample Data File Generation list, select the integration object for which you want to generate a data file, and then click Generate Data File.

An XML file will be generated with the name of the integration object followed by .xml. For example, if the integration object name is BIP Literature Fulfillment, the file name for the XML file is BIP Literature Fulfillment.xml.

Now you know how to convert the Actuate report files to BI Publisher RTF Template files. In order to generate Siebel reports with the converted BI Publisher RTF Template files you need to upload the RTF Template files and register them, and associate them with related Siebel Views so that the users can generate the reports from the relevant UI. I will talk about these process tomorrow, so stay tuned!

25 comments:

  1. Hi,

    Can you discuss about the conversion from ROD to BAS file.

    Thanks

    ReplyDelete
  2. Ok, I will cover the topic later, so stay tuned!

    ReplyDelete
  3. above you have talked about IO.
    for the reports which we are converting from actuate to BI, siebel has got Report object in 7.8 and there is no IO concept.
    So do we need to create a new IO for that or there is a utility to do that which gvs us an IO from the Report object

    Cheers,
    Love Thakur

    ReplyDelete
  4. Hi,
    The patch number for Conversion utility seems to be wrong. Right patch number would be 8968224. Kindly test and update the blog

    ReplyDelete
  5. Anto, you are right! 8288024 has been obsoleted due to a newer version (ver 2.0) has been released. The newer version is 8968224. I'll update shortly!

    ReplyDelete
  6. HI Love Thakur, currently BI Publisher integration is provided only through Siebel 8.1.1.

    ReplyDelete
  7. Very Nice. Can you point me to steps for creating RTF template file manually in OBIEE

    ReplyDelete
  8. @Anonymous

    ROD to BAS file.

    Steps.
    1)Install Siebel Tools of version which your reports are generated .
    2)Create ROL files first from Siebel Tools.
    3)Install Actuate.
    4)Build your ROD file with Actuate ,ROL file is needed to build ROD .
    5)You will generate BAS file then.

    ReplyDelete
  9. @Kanichiro Nishida.
    I am completed all the steps to upgrade actuate files but after the step Import from XML i am not able to view the report in any format.

    What can you suggest the error can be where should i start debugging from

    ReplyDelete
  10. Ankur,

    Can you generate one of the pre-seeded report such as Account report ? are you having the problem only with the reports you have uploaded ?

    ReplyDelete
  11. Anonymous, Now the conversion tool can generate IOs out of the Business Objects to IO in Siebel.

    ReplyDelete
  12. Has anybody seen the error :
    Can not find column "DB_LAST_UPD" in the resultset

    ReplyDelete
  13. Hi Kanichiro,

    we are using siebel 7.8.2.13 and reporting using actuate report as we know oracle desupported for actuate report then we want to migrate our reporting from Actuate to Oracle BI Publisher, please give me advice what action plan I have to prepare before I migrate to Oracle BI Publisher.

    Regards,
    Don Juan

    ReplyDelete
  14. I am getting the same error... Sieb 7.8, SQL2005. Any ideas how to solve it?

    ReplyDelete
  15. I am getting the same error... Sieb 7.8 SIA, SQL server 2005

    ReplyDelete
  16. Are you getting the error when you run the conversion tool ?

    ReplyDelete
  17. yes, my command line: run_ioc.bat -r X_REPORT -d SiebSrvr_Sieb78 -u SADMIN -p SADMIN

    the error:

    2010/02/25 10:35:54.055 (SEVERE) Report 'X_REPORT' integration failed!!
    Cannot find column "DB_LAST_UPD" in the resultset
    java.lang.RuntimeException: java.sql.SQLException: Cannot find column "DB_LAST_UPD" in the resultset at oracle.reports.utils.common.ExceptionHandlerImpl.raiseException(Unknown Source) at oracle.reports.actuatereports.ro2io.ReportObjectToIntegrationObject.run(Unknown Source) at oracle.reports.ApplicationRunner.runApplication(Unknown Source) at oracle.reports.ApplicationRunner.runROToIOConverter(Unknown Source) at oracle.reports.ApplicationRunner.main(Unknown Source)
    Caused by: java.sql.SQLException: Cannot find column "DB_LAST_UPD" in the resultset at ianywhere.ml.jdbcodbc.IResultSet.getDate(Native Method) at oracle.reports.actuatereports.ro2io.components.Report.createROFromResultSet(Unknown Source) at oracle.reports.actuatereports.ro2io.ReportObjectReader.createReport(Unknown Source)
    ... 4 more
    Conversion of report object 'X_REPORT' complete.
    Please view log file '"D:\BIP\scripts"' for the results.

    ReplyDelete
  18. Hi Kanichiro, the error comes when runing the conversion tool run_IOC

    ReplyDelete
  19. what fixpack are you guys using BIP with Siebel 7.8 on, and which QFs do you have installed?
    I'm having trouble getting it to work with 7.8!

    ReplyDelete
  20. I haven't worked on 7.8.2.14 is the one. Check my another post.
    http://bipconsulting.blogspot.com/2010/01/can-we-have-bi-publisher-integration.html

    ReplyDelete
  21. Hi Kanichiro,
    thanks for this blog, it helpes me a lot!

    I am trying to use Actuate and BIP in parallel at the moment. In the Report Menu there is now a Section "----BIP----" and one section "----ACTUATE----" with the related reports. However, the BIP one does only appear in ENU. On other languages it just shows blank. I have searched for a Symbolic String and LOV already but no luck. Do you happen to know where these are located?

    ReplyDelete
  22. Hi Kanichiro,

    I have downloaded the utility and used the syntax provided to convert from .bas to .rtf , but I have not provided any file name for RTF Template and Log file name in the syntax as it was mentioned as optional in the manual which we get from the patch.
    The conversion went successfull and my problem is I am unable to find the RTF file and log file.In which folder location should I search for these files.

    ReplyDelete
  23. Hi < I have a quick question, we are moving to siebel 8 and wishing to replace actuate with sibel BI . I have couple of questions on the architecture ..Can BI ( that is bundled with Siebel 8.0) run on Unix os ? also we are having 2 siebel environments ( DEV and Test ) in one server so in that case can we have 2 BIP installed on same unix server pointing to dev and test ?
    pls lets know ur advice/approach .
    -- Vivek

    ReplyDelete
  24. Vivek,

    1) Yes
    2) Yes. You can have one single J2EE server and deploy two BI Publisher servers with different names.

    With AS or WebLogic (I believe other J2EE servers would be the same) you can create two different domains and deploy BIP into different domains as well.

    ReplyDelete
  25. Hi ,

    I am converting actuate to bip .

    -------------------------

    C:\BIP\scripts>run.bat -i C:\BIP\scripts\RELSAMV.bas -o C:\BIP\scripts

    C:\BIP\scripts>cd /d C:\BIP\scripts\

    C:\BIP\scripts>SETLOCAL

    C:\BIP\scripts>IF NOT DEFINED LIB_DIR SET LIB_DIR=..\lib

    C:\BIP\scripts>set ext-libraries=..\lib\antlr.jar;..\lib\db2jcc.jar;..\lib\msbas
    e.jar;..\lib\mssqlserver.jar;..\lib\xercesImpl.jar;..\lib\xmlparserv2-904.jar;

    C:\BIP\scripts>set classpath=.;C:\PROGRA~1\IBM\SQLLIB\java\db2java.zip;C:\PROGRA
    ~1\IBM\SQLLIB\java\db2jcc.jar;C:\PROGRA~1\IBM\SQLLIB\java\sqlj.zip;C:\PROGRA~1\I
    BM\SQLLIB\java\db2jcc_license_cisuz.jar;C:\PROGRA~1\IBM\SQLLIB\java\db2jcc_licen
    se_cu.jar;C:\PROGRA~1\IBM\SQLLIB\bin;C:\PROGRA~1\IBM\SQLLIB\java\common.jar;..\l
    ib\antlr.jar;..\lib\db2jcc.jar;..\lib\msbase.jar;..\lib\mssqlserver.jar;..\lib\x
    ercesImpl.jar;..\lib\xmlparserv2-904.jar;;..\lib\Actuate2BIP.jar

    C:\BIP\scripts>if (-i) == (-i) goto exit

    C:\BIP\scripts>ECHO Please enter the parameters as follows:
    Please enter the parameters as follows:

    C:\BIP\scripts>ECHO Usage : run -i [Input File Path .bas] -o [Output File Path .
    rtf] -l [ Log File Path]
    Usage : run -i [Input File Path .bas] -o [Output File Path .rtf] -l [ Log File P
    ath]

    C:\BIP\scripts>ECHO Input File Path is mandatory, other parameters are optional.

    Input File Path is mandatory, other parameters are optional.

    C:\BIP\scripts>ENDLOCAL

    C:\BIP\scripts>goto EOF

    C:\BIP\scripts>
    -------------------------

    I have kept bas file in same folder as run.bat and java version is 1.5 . can you please let me know , where am i going wrong .

    thanks in advance .

    ReplyDelete