e-business suite 1 _ jim pang _ the anatomy of multiple language support (mls) in oracle ebs.pdf

32
The most comprehensive Oracle applications & technology content under one roof The most comprehensive Oracle applications & technology content under one roof The Anatomy of Mul0ple Language Support (MLS) in Oracle EBS Jim Pang [email protected] [email protected]

Upload: insync2011

Post on 24-May-2015

1.212 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof The most comprehensive Oracle applications & technology content under one roof

The  Anatomy  of  Mul0ple  Language  Support  (MLS)  in  Oracle  EBS  

Jim  Pang  [email protected]  

[email protected]  

Page 2: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Agenda  •  Mul9-­‐Language  Primer  

–  Quiz  –  Input/Character  Mapping/Display  –  Character  sets  –  Unicode  /  UTF8  

•  Oracle  EBS  MLS    –  Oracle  Forms  –  Oracle  Reports  

•  Project  Planning  •  Lessons  Learnt  •  Q&A  

Page 3: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Mul9-­‐Language  Primer  

Page 4: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Quiz  How  many  bytes  in  the  database  are  needed  to  hold  the  following  characters  ?    

A  in  Western  European  character  set    À  in  Western  European  character  set      あ  in  typical  Japanese  character  set    A  in  Unicode    À  in  Unicode    あ in  Unicode    あ in  UTF8  

Page 5: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Answers  

How  many  bytes  in  the  database  are  needed  to  hold  the  following  characters  ?    

A  in  Western  European  character  set  =  1    À  in  Western  European  character  set  =  1    あ  in  typical  Japanese  character  set  =  2    A  in  Unicode  =  2    À  in  Unicode  =  2    あ in  Unicode  =  2    あ in  UTF8  =  3  

Page 6: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Input  -­‐>  Character  Mapping  -­‐>  Display  (English)  

User  press  and  release  ‘a’  key  

Send  ‘1E’    ‘9E’    scan  codes  

a  Display  ‘a’  on  screen  

English  Locale  lookup  =  61  (single  byte)  Character  lookup  for  display  

Page 7: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

User  press  and  release  ‘a’  key  while  in  Japanese  input  mode  

Send  ‘1E’    ‘9E’    scan  codes  

Display  ‘a’  on  screen  

Japanese  Locale  lookup  =    A4    A2  (double  bytes)  Character  lookup  for  display  

あ  

Input  -­‐>  Character  Mapping  -­‐>  Display  (Japanese)  

Page 8: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Evolu9on  of  Asian  Character  Sets  

•  1978  :  Japan  invented  JIS  charset  which  include  Japanese  and  Chinese  

•  198x  :  China  invented  Chinese  charset  based  on  Japanese  JIS  •  198x  :  Korea  does  the  same  •  Since  then,  various  deriva9ves  of  Japanese,  Korean  and  

Chinese  charsets  emerges  •  So  as  the  rest  of  the  world  !!  

Page 9: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Examples  of  interna9onal  charsets  

Page 10: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Unicode  comes  to  the  rescue  

•  1992  :  Unicode  Consor9um  was  formed  •  Unicode  consolidates  all  exis9ng  /  common  character  sets  in  

the  world  !!  •  Each  character  is  represented  by  exactly  two  bytes  

Page 11: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Example  of  Unicode  Characters  

Unicode  for    a  =      00    61  (two  bytes)  

Unicode  for  あ    =      30    42  (two  bytes)  

Page 12: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

But,  Unicode  Is  Not  Good  Enough  

•  Majority  of  computer  data  is  English  or  Number  which  used  to  be  one  byte  per  character  

•  Unicode  (two  bytes  per  character)  will  substan9ally  increase  data  storage  ($$)  and  decrease  speed  ($$)  

•  Unicode  is  only  used  for  transient  data  during  program  execu9on  

Page 13: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

This  9me,  UTF8  comes  to  the  rescue  

•  UTF8  is  a  transforma9on  /  encoding  algorithm  of  Unicode  •  UTF8  codes  span  from  one  to  six  bytes  •  English  and  Numbers  are  encoded  back  to  single  byte  data  

(Problem  solved  !!)  

Page 14: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Example  of  UTF8  Codes  

Character    a  Unicode  =  00    61  Octet  =  0000  0000  0110  0001  UTF8  =  0110  0001  UTF8  =      61  (single  byte)    Character    À  Unicode  =  00    E8  Octet  =  0000  0000  1110  1000  UTF8  =  1100  0011  1010  1000  UTF8  =      C3    A8  (two  bytes)        

Characterあ  Unicode  =  30    42  Octet  =  0011  0000  0100  0010  UTF8  =  1110  0011  1000  0001  1000  0010  UTF8  =      E3    81    82  (three  bytes)  

Page 15: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Oracle  EBS  MLS  

Page 16: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Oracle  Mul9-­‐Language  Support  (NLS/MLS)  Setup  •  NLS_CHARACTERSET  =  AL32UTF8  (recommended  by  Oracle  for  R12)  •  Env    parameter  NLS_LANG  =  American_America.UTF8  (DB  9er  and  

Applica9on  9er)  •  Ac9vate  selected  languages  using  OAM  License  Manager  •  Run  adadmin  to  maintain  MLS  tables  •  Run  adpatch  to  Install  EBS  MLS  (Mul9-­‐Language  Support)  packs  for  

selected  languages  •  Client  PC  Windows  language  /  character  set  can  be  tradi9onal  or  UTF8  •  Browser  character  set  can  be  tradi9onal  or  UTF8  •  Character  set  transla9on  can  occur  on  PC,  Browser,  Java,  Applica9on  9er,  

Oracle  u9li9es  (sqlplus,  sqlldr.;.)  

Page 17: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Oracle  NLS/MLS  Transla9on  

•  When  two  data  nodes  have  mismatched  character  sekngs,  Oracle  components  translate  source  data  into  target  character  set  inten9onally  (good  !)  or  uninten9onally  (data  corrup9on  !)  

Page 18: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Oracle  EBS  Mul9-­‐Language  Capability  •  Database  NLS_CHARACTERSET  =  AL32UTF8  to  support  data  store  in  any  

language  •  Enabled  languages  in  EBS  ac9vate  MLS  func9onality  in  transla9on  

tables  (xxx_TL)  •  There  are  about  8,000+  xxx_TL  tables  •  MLS  packs  provide  forms  and  reports  boilerplates  in  selected  languages  •  OA  Framework  (html  forms)  does  the  transla9on  •  XML  (BI)  Publisher  has  its  own  character  transla9on  capability  with  

language  templates  •  Profile  op9ons    

–  ICX:  Language  (Oracle  Forms)  –  ICX:  Client  IANA  Encoding  (HTML  Forms)  –  FND:  Na9ve  Client  Encoding  (Display  reports  output)  

 

Page 19: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Example  of  Oracle  EBS  MLS  enabled  tables  

fa_addi0ons_b    asset_id    asset_number    asset_type    tag_number    asset_category_id  

         ……..  

fa_addi0ons_tl    asset_id    language    source_lang    descrip9on  

         ……..  

Page 20: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

English  Form  can  accept  any  character  

Page 21: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Installed  JA  (Japanese)  and  ZHS  (Simplified  Chinese)  MLS  Packs  

•  Form  displays  record  where  Language    value  =  form  language  •  For  any  future  update  to  asset  descrip9on  via  English  form,  the  form  will  con9nue  to  update  all  three  rows  because  Source_Lang  is  US  

Page 22: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Switch  to  Japanese  Form  

•  Switch  to  Japanese  Forms  by  sekng  profile  op9on  ICX:  Language;  •  Logout  and  login  again  to  ac9vate;  

Page 23: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Japanese  Form  

•  Boilerplate  and  seeded  data  in  Japanese  

Page 24: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Enter  Japanese  Data  in  Japanese  Form  

If  the  Asset  descrip9on  is  updated  via  the  Japanese  Form,  here  is  what  is  stored  in  the  tables;    SQL>  select  asset_id,  language,  source_lang,  substr(descrip9on,1,20)  from  fa_addi9ons_tl  where                        asset_id=5163883;    ASSET_ID  LANGUAGE  SOURCE_LANG  SUBSTR(DESCRIPTION,1,20)  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  5163883    JA    JA    Asset  1  あえうEnglish  d          5163883    US    US    Asset  1  English  desc                          5163883    ZHS    US    Asset  1  English  desc  

This  row  becomes  only  updatable  in  Japanese  form  because  Source_Lang  has  been  updated  to  JA    

Page 25: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Use  English  Form  to  view  Asset  data  

•  Switch  to  English  form  by  sekng  profile  op9on  •  Logout  and  login  to  reac9vate  •  User  is  seeing  the  row  which  is  Language  =  US    

Page 26: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Run  Reports  

•  Regardless  of  what  language  you  are  in,  you  can  run  report  in  any  language    

Page 27: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Reports  Output  in  Japanese  

Page 28: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Use  English  form  to  input  asset  descrip9on  in  all  languages  

•  In  English  form,  user  can  click  the  ‘Globe’  icon  on  the  task  bar,  a  window  will  pop  up  to  allow  user  to  enter  MLS  enabled  fields  in  all  languages  

Page 29: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Project  Planning  •  Language  requirement  ?  

–  Legal  /  Statutory  –  Users  

•  Data  conversion  –  Database  Migra9on  Assistant  for  Unicode  (DMU)  –  Data  migra9on  scripts  for  legacy  systems  

•  Capacity  planning  •  Overheads  in  MLS  packs  

–  Installa9on  –  Tes9ng  

•  Infrastructure  and  client  desktops  •  Prin9ng  •  Supportability  

Page 30: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Lessons  Learnt  

•  Hire  qualified  person  in  MLS  •  Verify  data  using  ‘dump’  commands  •  Check  your  DR  server,  backup,  restore,  interfaces  etc.  •  Does  data  reviewer  or  approver  speak  the  same  language  ?  •  Engage  mul9lingual  users  for  centralised  tes9ng  •  Test  all  combina9ons  of  configura9ons  

Page 31: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Q  &  A  

Page 32: E-Business Suite 1 _ Jim Pang _ The anatomy of multiple language support (MLS) in Oracle EBS.pdf

The most comprehensive Oracle applications & technology content under one roof

Appendix  •  Useful  sql  commands  

–  Select  *  from  V$NLS_VALID_VALUES  order  b  parameter,  value;  –  Select  *  from  V$NLS_PARAMETERS  where  parameter=‘NLS_CHARACTERSET’;  –  Select  dump(columnxx,  1016)  from  table;  

•  Useful  unix  commands  –  od  –x  <filename>  –  iconv  –f  UTF-­‐8  –t  ISO-­‐2022-­‐JP  source_file  –  Sqlplus  adncnv  command  –  NLS_LANG=American_America.UTF8;export  NLS_LANG  

•  Oracle  support  (metalink)  –  Doc  ID:  Note:333785.1  -­‐>  Oracle  Applica9on  11i  Interna9onaliza9on  Guide  –  Interna9onaliza9on  Update  Notes  for  Release  12  [ID  393320.1]  –  Patch  ID  252422.1  –  NLS  release  notes  [ID  788053.1]  –  Globaliza9on  Guide  for  Oracle  Applica9ons  Release  12  [ID  393861.1]