Monday, April 21, 2014

Check boxes not appearing–BI Publisher Reports

 

Today I lost a whole day trying to get BI Publisher to print check boxes in PDF output reports. Though this issue is common on most implementations, and lots of solutions documented, none of that worked for me. I am documenting the changes I made to get it working here, hopefully it will help some one else.

My requirement was to get Siebel-BI Publisher reports to print checkboxes, for boolean fields in PDF output, for the same fields where Siebel displays checkboxes.

Siebel version : 8.1.1.11 SIA [23030] ENU  (Open UI)

BI Publisher version : 10.1.3.4

Server OS: Solaris 2.6.39-400.17.1.el6uek.x86_64


RTF Template:

After you have installed the BIP Word Addon, you need to enable the Developer tab, to insert the CheckBox form control.

image

Ensure that the “Check box enable” option is checked. Also, you may specify default value, here I have selected “Not checked”, so the box would appear without a check in it be default.

image

Map the control to a field in the XML, and ensure it works on your local machine.

Now if the mapping is correct you should see a checkbox on it when you preview the report. If the font setup is incorrect on you Windows machine, you will see a Rhombus instead of a checkbox.

PDF Output:

image

This means that BIP is able to map the field to a checkbox, but the font installation is not complete on your Windows machine. This is OK, we need to ensure the fonts are installed correctly on the server.

 


Server side setup:

    1. On you BIP server, upload the Wingdings 2 fonts. This is a .ttf file, you may also find this in your Windows machine at C:\Windows\Fonts\
    2. Upload this .ttf file to your BIP server onto …jdk/jre/lib/fonts. This will change depending your BIP server installation. For me the path is

    /oracle/apps/OraHome_1/jdk/jre/lib/fonts

    1. Now log into your BIP server as Administrator. Navigate to Admin –> Font Mappings.  clip_image001
    2. Click on “Add Font Mapping”. In the next screen, check if your new font appears in the target font mappings dropdown list. clip_image002

    If the font appears in the list, select it under Truetype. In the top Field, enter Windings2. Leave the Style and Weight as Normal. Leave the TTC Number blank.

    1. Click on “Add Font Mapping”. In the next screen, check if your new font appears in the target font mappings dropdown list.
    2. Edit your xdo.cfg file. It will be somewhere under Configuration folder     …/OraHome_1/xmlp/XMLP/Admin/Configuration/xdo.cfg
    3. Open the xdo.cfg file in notepad. BIP would have already added the font mapping into it. You now need to add the character code for the “Yes” and “No” values to toggle the Checkbox. Add the below line in the properties container:                                                                                        <property name="rtf-checkbox-glyph">Wingdings2;0082;0163</property>. image This is what my file looks like.
    4. Restart BIP Server.
    5. When you generate the PDF output of the report, the checkboxes should appear properly now.  image
    6. However, if you generate an HTML output report, you might see “R” in place of the check box. This is because in Wingdings2 font, capital R is mapped to the checked checkbox (decimal code 82) .  And the pound symbol is mapped to the unchecked checkxbox (decimal code 163).image

 

Hope it helped !

 


Notes:

I was getting tired triggering the report from Siebel every time I made a change, so I created a new standalone report directly in BIP, with a xml file for its input. This way, I could test changes directly in BIP without logging into Siebel.

I found that although Wingdings1 font had checkboxes, this would not appear in PDF output. The easiest way to see the chars in Word is to Insert ->Symbol.

image

Word will show you the code for each symbol when you insert them.

Wingings 1 font works right when you’re report has HTML output. But won’t work with PDF, it would come out as some junk chars. For PDF to work, you have to use Wingdings 2.

This is inputted in the cfg file :

<property name="rtf-checkbox-glyph">Wingdings2;0082;0163</property>

Wednesday, January 1, 2014

BIP - Siebel functions

 

If you use Siebel functions in your BIP reports for date conversion, you will get “class-not-found” errors during your report generation.

 

image

 

The fix for this is to point BIP to the path where your Siebel JARs are installed.

In your Work designer: Go to Addins-> Tools –> Options, and add a the path to the Java option field, under Preview.

For me, Siebel is installed on D drive.

-Xmx256M  -Xbootclasspath/a:D:\Siebel\8.1\Tools_1\CLASSES\SiebelXMLP.jar;D:\Siebel\8.1\Tools_1\CLASSES\XMLP.jar;D:\Siebel\8.1\Tools_1\CLASSES\siebel.jar;D:\Siebel\8.1\Tools_1\CLASSES\XSLFunctions.jar;D:\Siebel\8.1\Tools_1\CLASSES\SiebelCustomXMLP.jar;D:\Siebel\8.1\Tools_1\CLASSES\SiebelCustomXMLP_SIA.jar

 

image