Non-English characters appears as ???? in BI Publisher PDF output

Japanese characters appears ???? on PDF output or Report display ????? as description for Arabic characters, these are some of the frequently asked questions or issues.

When non-English characters appears as ???? in PDF output generated by BI Publisher, the issue could be either FO Processor could not find the required fonts or XML data does not have proper encoding.

Lets discuss the first case first.

Oracle ships the Albany fonts along with products to support non-English languages. When we install the BI Publisher, the fonts are installed in $JAVA_HOME/jre/lib/fonts directory. You can confirm this by listing the A*.ttf files. For Oracle E-Business Suite, these fonts are available in $FND_TOP/resource and from here, it can copied to respective node.

If you see ???? in PDF output, open the PDF document in Acrobat, right click and select Document Properties and go to font tab. Make sure it shows the "Albany*" for the fonts used in document. If you see the fonts as "Albany*", your fonts are installed correctly and you should investigate for encoding issue, if not, FO Processor could not find the required fonts.

In case of BIP Enterprise release, just check out for the Albany with the software bundle and copy it to current $JAVA_HOME/jre/lib/fonts directory.

For Oracle E-Business Suite, it is little tricky. You have to find out your exact JAVA_HOME. Check whether you are running your report within UI, OA framework page, BIP Common Region or it is submitted through Concurrent Manager.

In first case, where BIP report is embedded or submitting within OAF UI, fonts should be under $OA_JRE_TOP/jre/lib/fonts. Reports submitted from Concurrent Manager, access the fonts from $AF_JRE_TOP/lib/fonts directory.

Run the System Administrator request "Generate concurrent processing environment information" and get the OA_JRE_TOP and AF_JRE_TOP details and copy the A*.ttf files from $FND_TOP/resources to respective fonts directory. This should resolve the any missing fonts issue in EBS.

It is not necessary that your fonts should be in $JAVA_HOME/jre/lib/fonts directory, It could be any other directory as well, but in that case your have to map your font directory from Administrator UI using XML Publisher Administrator responsibility

ebs_fonts.jpg

For Standalone/Enterprise release, the same can be set through Admin > Font Mappings UI.

ENT_FONTS.jpg

Please refer this link from BI Publisher User guide for further details on Font mappings.

Now on the second reason for ???? issue.....

When the XML Data does not have proper encoding, The xml itself not readable. Fonts appear incorrectly in XML itself. If we open XML data file in any of the browser, either it errors out as invalid xml or it does not show the fonts correctly. You will not see this issue, when you generate the data through BI Publisher Data Template, because, it always generate the xml data in UTF-8 encoding and set the correct encoding.

XML generated through old version of Oracle Report or any customize PL/SQL logic, most of the time, it does not set the encoding in XML header or it just hard coded as UTF-8 irrespective of the actual data encoding, which could be different from UTF-8.

When FO Processor could not recognize the character properly against the supplied encoding, it replace the character as ?, instead of earring out the report. To resolve this issue, review your XML and XML generation process and set the correct e ncoding in XML header, verify the XML by opening it in browser and make sure you can read the data properly.

I would recommendation to use the Data Template to generate XML. I do not see any scenario, where you can't use Data Template to generate your XML Data.

Please feel free to ask any question on this topic. I will be glad to answer your queries.

Thanks.

Comments:

Hi Ashish, I am generating hindi pdf through bi publisher. The RTF file has been designed using hindi font and i upload the rtf file to a report in BI. The output pdf is generating with ????, at the same time when i tried the file with some other formats like html, excel or other formats it shows the statement as hindi language. if i tried open the report with pdf, then it shows like ???? i have upload the Mangal font in Bi also done the add font mapping, but still it shows like ?? only can you please let me know, what may be the reason for this issue. Thanks, Mohan

Posted by Mohan on August 23, 2010 at 04:28 PM PDT #

Hi Mohan, Did you try to copy the fonts file to $JAVA_HOME/jre/lib/fonts directory? -Ashish

Posted by ashish.shrivastava on August 23, 2010 at 04:55 PM PDT #

Ya ashish, I copied the Mangal and SHREE-DV0726-OT fonts into the mentioned path. i can able to see the fonts under Admin > Font Mapping > Add Font Mapping and set the font family as Helvetica, Target font type as True type and target font is Mangal.ttf and save that. but still hindi is not getting generated, is there any setups needs to be done? please let me know, Thanks,

Posted by Mohan on August 23, 2010 at 05:49 PM PDT #

Ashish, Have you received my previous post Thanks,

Posted by Mohan on August 23, 2010 at 06:36 PM PDT #

Hi there. Thanks for putting this together!

We cutomized the AR invoice report but now the program does not use the correct encoding. This causes issues because the special characters used in the French language do not show up correctly using our custom report. Any ideas on why this might be happening? Thanks!

When I run the seeded Invoice report (RAXINV) the XML encoding is UTF-8.

<?xml version="1.0" encoding="UTF-8" ?>

We customized this report but now when I run it the custom report it uses iso-8859-1.
<?xml version="1.0" encoding="iso-8859-1" ?>
This causes issues because we have special characters in the French language that doen't display properly. For example text shows up like this in our custom report.
<TRX_COMMENTS>Paiement immédiat à réception de la facture</TRX_COMMENTS>
It shows up correctly in the seeded report:
<TRX_COMMENTS>Paiement immédiat à réception de la facture</TRX_COMMENTS>

Here are the environment variables from the apps server. Any help is appreciated!

# echo $XML_REPORTS_XENVIRONMENT = /u00/product/appluat/UAT/apps/tech_st/10.1.2/guicommon/tk/admin/Tk2Motif_UTF8.rgb
# echo $NLS_LANG = American_America.UTF8
# echo $XENVIRONMENT = /u00/product/appluat/UAT/apps/tech_st/10.1.2/guicommon/tk/admin/Tk2Motif_UTF8.rgb
# echo $LANG = en_US.UTF-8

Posted by Rustin on July 18, 2011 at 12:19 AM PDT #

Hi:

We are trying to use XML Publisher 5.6.3 inside eBS 11510.2
The Concurrent request runs fine and the Diagnosis->View XML shows the characters correctly in Portuguese, but the pdf/xls (with provided template rtf) shows different (separete in both cases) chars for the Protuegues ones.

Thanks
Sunil

Posted by guest on September 14, 2011 at 07:19 AM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

bocadmin_ww

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today