EBS XMLP 報表亂碼解決方案

來源:互聯網
上載者:User

問題描述:在使用XMLP做報表的過程中,經常會遇到亂碼的情況。

導致亂碼的原因有兩種:字元集的問題和字型定義的問題。

字元集引起的亂碼   :一般亂碼成不規則性的。

字型定義引起的亂碼:一般亂碼是規則的,一般為(反?)

 

一. 字元集的問題

 

   解決方案:

   1. 在PL/SQL中輸出XML時,頭資訊的編碼為:

       output('<?xml version="1.0" encoding="' ||<br /> fnd_profile.value('ICX_CLIENT_IANA_ENCODING') || '"?>');

2.  修改EBS系統喜好設定:   客戶機字元編碼修改為:Unicode(UTF-8),修改喜好設定會影響到設定檔

     FND: NATIVE CLIENT ENCODING的值。

3.  直接修改FND: NATIVE CLIENT ENCODING的值,使客戶機的編碼與伺服器保持一致。

     

4. 注意事項:

   ORACLE的字元集命名(非國際標準)和XML規範(IANA國際標準)不一致,我們還不能直接根據Oracle的字元集來設定XML字元集,需要根據下表映射設定(也可以通過utl_gdk.charset_map來獲得映射關係):

     

     

 

 

二. 字型定義的問題

      解決步驟:

       1. 查看$OA_JRE_TOP/jre/lib/fonts目錄下是否包含類似ALBAN*.ttf 的檔案。

       2. 如果沒有,從EBS的$FND_TOP/resource 下拷貝一份,

            使用命令:

           cp $FND_TOP/resource/ALBAN*.ttf $OA_JRE_TOP/jre/lib/fonts<br /> 

     

     3. 重啟應用。問題就可以解決。

     4. 原理:預設情況下,XMLP不支援中文,原因僅僅是缺少字型。因為XMLP採用Java編寫,理論上Java支援任何語種。EBS內建了中文字型,但沒有安裝到XMLP目錄。因此要做個拷貝.

   5. XMLP預設輸出格式為HTML的時候,開啟時所使用的字型是$OA_JRE_TOP下的。使用EXCEL和PDF時使用的是$FND_TOP下面的字型

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.