Вы находитесь на странице: 1из 11

Multi-Lingual Implementation?

Siebel does not support all languages in world. Hence it is important to seek information about how many
languages customer is requesting. Usually Languages that are supported by Unicode encoding are also
supported by Siebel. If any language can not support Unicode encoding, then it cannot be implemented in
Siebel.
Siebel out of the box comes with some language packs. The languages chosen by Siebel are spoken/
used by larger chunk of people across the globe. While deciding upon languages for support Siebel had
considered usability factor.
Some of the OOTB languages that Siebel pack come with: English, German, Dutch, Chinese, Japanese,
Spanish, French, Italian, Swedish, Danish etc.
Languages that have considerable user base but have not been supported by Siebel: Turkish, Polish,
Norwegian, English (British)
After finding answers to above questions, the customers must be made aware of the internationalization
features/ impacts. Following is the list of Localizable Elements.
Localizable Elements

Software
Strings in user interface
Lists of values
Seed data
Bitmaps
iHelp
Training materials
Documentation
Online help
Reports
Templates and correspondence
Non-Localizable Elements

DLLs
Message files
Log files
Splash screens Localization Possible
Help menu applets for the Siebel Web Client:
About Record Applet
About Siebel Applet Localization Possible
About SRF Applet
About View Applet
Change Records Popup Applet (SWE)
Parametric Search Form Applet
Technical Support Applet

5) Installation Considerations
Hardware Consideration:
Following is approximate estimate for implementation containing 2 languages. If number of Languages
increase then more hardware needs to be added in proportion.
Server Machine Memory: Min 4 GB RAM
Server Machine HDD: Min 100 GB
Software Consideration:
One Siebel server is capable of handling components 2 languages. If implementation spans across 3-4
languages then more Siebel servers must be added in enterprise.
The encoding of the underlying DBMS must be Unicode. This is to ensure that the data from all
languages is supported.

OOTB Language consideration:


If any OOTB language is to be implemented then all developers need to do is apply Language pack of that
Language. The language pack takes care of all necessary installations. It also takes care of SWSE
installation, virtual directories etc.
In case of OOTB language implementation you may skip steps from 6 to 15.
Here are the steps to translate the Siebel Application into an unshipped/ non-OOTB language.
Language used in following example is Turkish (TRK):
6) Registering new Languages
As a first step, you need to make sure that there the target language exists with the correct three letter
code in Application Administration, Languages.
This three letter code should be same as what is defined by Microsoft for identifying languages.
The 3 lettered code for Turkish language is TRK.
To ensure that please follow following steps.
Creating a Siebel language record for an unshipped language
a.

In the Siebel application, choose Navigate > Site Map > Administration - Data > Languages.

b.

If necessary, create a new record for the unshipped language.


For example, for Turkish, specify Turkish as the Name value and specify TRK as the Code value.

c.
Start Siebel Tools against the server database, and verify that the language record displays
correctly. Also verify in the List of Values Administration screen that you can enter LOV records for the
new language.
NOTE: If necessary, after you create the language record, also create a record for any new locale you
require. More information about locales is provided below.

About Creating a Locale


If an existing Siebel locale does not cover the users of the unshipped language you are implementing, you
must also create a locale record for the location for these users.
When creating a locale, copying an existing locale for which some of the same settings apply will make
data entry easier. After you create a new locale, create translation records to provide the name for the
locale for all the languages you are using.
When creating language records, observe the following guidelines:
Language codes must be defined using all capital letters (such as TRK rather than trk, for Turkish).
Your language code must use the same first two letters as the Microsoft code for the language, in order to
ensure that the correct internal libraries will be used. For example, if you want to create a language code
for Austrian German, name it DEA, so it will use the same code page as German (DEU). Similarly, use
ENG for British English.
7) Importing Symbolic strings
Once done with registering language, you need to create the translations for the Symbolic Strings project
in Tools.
For performance reasons, this should be done on the Server Database
Note: Please make sure you have a current full database backup that you can revert to, just in case
anything goes wrong.
Doing this on a local tools client would only work after checking out the projects that you import TRK
Symbolic strings into first.
Exporting the Symbolic Strings in Tools (Server DB),
a.

In Tools->View-> Options set "Language to an installed language: ENU (English-American)

b.
Then, in Tools-> Utilities-> Locale Management
Select Options Tab:
c.
Set Source Language to
English-American
d.
Set Target Language
to Turkish
e.
Objects:
By Project
f.

Check the "Symbolic Strings" Project only

g.
Click Export Tab:
Attributes to export:
String attributes only

h.
Click the "Export" button and select an export format of your choice, typically Text File (.txt) to be
able to edit the exported string table in Excel.

Note that this will export about 45000 records

i.

You need to populate the column Target Value with the Turkish Translation here

This is done best by removing the first two lines


Source (Language, Application): (English-American, STD - Standard)
Target (Language, Application): (Turkish, STD - Standard)
(keep the original file with the header as a backup, as you will need to prefix these two lines again for an
import into Tools) and importing the file into Excel as Tab Delimited text file.
j.
After populating all required Target Values, save the file again from Excel as Tab delimited Text
file
Text (Tab delimited) *.txt
k.
Copy the two initially removed lines again to the beginning
and import it into Tools in
Tools -> Utilities -> Locale Management
Import Tab -> Import
If you only have a limited number of applets to translate, it may be faster to create locale records for these
manually.
a.
Developers need to follow below steps to add translations for UI elements.
b.

Identify Applet / List Columns/ Applet Controls that need translation.

c.

Check in necessary configuration changes in base language. Lets say English.

d.

Change tools language to Target Language using following steps

i.

Navigate to Tools-> Options-> Language Settings

ii.

Select Target Language as Tools language and click OK.


e.

Check out Symbolic Strings Project (Check out can be done on individual String wise also)

f.

Query for each Symbolic string that is visible in UI and add Locale record in Target language.

g.

After adding Locale record, check in.

Note that this approach may be faster for a limited amount of views to be populated.

If no translations are available for all 45000+ words which is usually the case as translating all words is
not possible usually following steps can be followed.
a.
Follow steps from a to h from the section of exporting Symbolic strings explained above.
b.

Copy contents of Source value column into Target Value column.

c.
By following above step one should make sure that same set of values are available in Source as
well as in Target value column.
d.

Keep the header information in the string file same as original which is:

Source (Language, Application): (English-American, STD - Standard)


Target (Language, Application): (Turkish, STD - Standard)
8) Creating Application Object Manager Components
Next, you must create and configure Application Object Manager (AOM) components you are going to
use for the unshipped language.
This step applies to Siebel Web Client users. It does not apply to Siebel Mobile Web Client or Developer
Web Client users.
TIP: Follow this procedure for a single component for testing purposes, before you create all other
components you may require.
Configuring an Application Object Manager for an unshipped language
a.
Start an employee application such as Siebel Call Center in the base language, such as ENU.
Navigate to Administration - Server Configuration > Enterprise Explorer.
b.

In the explorer tree, expand the enterprise, and then click Component Definitions.

c.
In the Component Definitions list, select an Application Object Manager component on which
you will base your new component. For example, select Call Center Object Manager (ENU) then choose
Copy Record from the menu.
d.
i.
ii.
iii.
iv.
v.

Provide values like the following for the server component you created:
Component = Call Center Object Manager (TRK)
Alias = SCCObjMgr_TRK

Component Type = Application Object Manager (the value is copied automatically from the source
record you selected inStep c)
Component Group = Siebel Call Center
Description = Call Center Object Manager (TRK) for Turkey (the value is copied automatically from the
source record you selected in Step c)
e.
Provide parameter values for this AOM component. In particular, specify the Language Code
and OM - Resource Language Code parameters. Depending on the requirements for your deployment,

you may set the language parameters in different ways. Verify all other parameter settings for this
component.
i.

With the new component selected in the Component Definitions list, expand Component Definitions in
the explorer tree, expand the selected Application Object Manager element, and then click Parameters.

ii.

In the Component Parameters list, query for the Language Code parameter TRK

iii.

Query for the OM - Resource Language Code parameter. Set the Value to ENU.
9) Creating Virtual Directories on the Web Server
You can copy an existing virtual directory entry and adapt it for the new language (for example,
changing enu to TRK).
For more information about creating virtual directories, see the Technical Note 456 on Siebel Metalink.
After you add the virtual directories, you update the eapps.cfg (or eapps_sia.cfg) file on the Siebel Web
Server Extension (SWSE).
10) Updating the eapps.cfg File on the SWSE
After you created virtual you need to create corresponding entries in the eapps.cfg file, or eapps_sia.cfg
for Siebel Industry Applications, on the SWSE.
For example, copy the section shown as [/callcenter_enu] to be [/callcenter_TRK]. Change any languagespecific references from ENU or enu to TRK or trk.
For example, you must specify the correct component name in the ConnectString parameter, and specify
the correct directory name in the WebPublicRootDir parameter. Include all parameters in the copied
section of the file.
Copy this:
[/callcenter_enu]
ConnectString = siebel.TCPIP.None.None://siebsrvr78:2321/sieb78/SCCObjMgr_enu
WebPublicRootDir = D:\siebel78\SWEApp\public\enu
To this:
[/callcenter_TRK]
ConnectString = siebel.TCPIP.None.None://siebsrvr78:2321/sieb78/SCCObjMgr_TRK
WebPublicRootDir = D:\siebel78\SWEApp\public\TRK
11) Creating language subdirectories for Turkish language on the Siebel Server
a.
On the Siebel Server machine, create a language subdirectory TRK under
SIEBSRVR_ROOT\objects.
b.

Copy the contents of SIEBSRVR_ROOT\objects\ENU into this directory.

NOTE: Because you have copied the SRF file for another language, the Siebel application user interface
will display in language ENU unless or until you compile a new SRF for the unshipped language TRK.
c.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\bin. Copy configuration files
only from SIEBSRVR_ROOT\bin\ENU into this directory. The configuration files (CFG files such as

uagent.cfg for SiebelCall Center) will be used by the Application Object Managers you will create for
language TRK.
d.
For Siebel Industry Applications (SIA), create a new language subdirectory TRKSIA under
SIEBSRVR_ROOT\bin. Copy the contents of ENUSIA into this directory.
e.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\bin\msgtmpl. Copy the
contents of SIEBSRVR_ROOT\bin\msgtmpl\ENU into this directory.
f.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\bin\reports. Copy the
contents of SIEBSRVR_ROOT\bin\reports\ENU into this directory.
g.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\webmaster. Copy the contents
of SIEBSRVR_ROOT\webmaster\ENU into this directory.
h.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\webmaster\files. Copy the
contents of SIEBSRVR_ROOT\webmaster\files\ENU into this directory.
i.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\webmaster\help. Copy the
contents of SIEBSRVR_ROOT\webmaster\help\ENU into this directory.
j.
Create a new language subdirectory TRK under SIEBSRVR_ROOT\webmaster\images. Copy the
contents of SIEBSRVR_ROOT\webmaster\images\ENU into this directory.
k.
Create a new language subdirectory TRK under
SIEBSRVR_ROOT\webmaster\<siebel_build>\scripts. Copy the contents of
SIEBSRVR_ROOT\webmaster\<siebel_build>\scripts\ENU into this directory.
l.
In SIEBSRVR_ROOT\webmaster\<siebel_build>\scripts\TRK, rename the file
swemessages_ENU.js to be swemessages_TRK.js
NOTE: If you apply a patch release to the Siebel Server after completing localization, you should recopy
the file swemessages_ENU.js from ENU toTRK (and rename the file again, as described above) to make
sure your localized product remains up to date.
12) Creating language subdirectories for an unshipped language on the SWSE
a.
On the Siebel Web Server Extension (SWSE) machine, create a language subdirectory TRK under
SWSE_ROOT\public,
b.

Copy the contents of SWSE_ROOT\public\ENU into this directory

NOTE: Each time the Web server is restarted; files and subdirectories are automatically copied from the
webmaster folder on the Siebel Server to the public folder on the SWSE. For more information, see the
Siebel Installation Guide for the operating system you are using.
13) Creating language subdirectories for an unshipped language on a MobileWeb Client

a.
On a Mobile Web Client machine, create a language subdirectory TRK under
SIEBEL_CLIENT_ROOT\objects
b.

Copy the contents of SIEBEL_CLIENT_ROOT\objects\ENU into this directory

NOTE: Because you have copied the SRF file for another language, the Siebel application user interface
will display data in language ENU unless or until you compile a new SRF for unshipped language TRK.
c.
Create a new language subdirectory TRK under SIEBEL_CLIENT_ROOT\bin. Copy
configuration files only from SIEBEL_CLIENT_ROOT\bin\ENU into this directory. The configuration
files (CFG files such as uagent.cfg for Siebel Call Center) will be used by the application for language
TRK.
d.
For Siebel Industry Applications (SIA), create a new language subdirectory TRKSIA under
SIEBEL_CLIENT_ROOT\bin. Copy the contents of ENUSIA into this directory.
NOTE: If you apply a patch release to the Siebel Server after completing localization, you should recopy
files from ENUSIA to TRKSIA to make sure your localized product remains up to date.
e.

Create a new language subdirectory TRK under SIEBEL_CLIENT_ROOT\public.

f.

Copy the contents of SIEBEL_CLIENT_ROOT\public\ENU into this directory.

14) Modifying Application Configuration Files


For Siebel Call Center for Turkish (TRK), editSIEBEL_CLIENT_ROOT\bin\TRK\uagent.cfg to include
parameter values similar to the following:
[Siebel]
Language = TRK
ResourceLanguage = ENU
WebClientSiteDir = D:\PROGRA~1\SIEBEL\7.8\WEBCLI~1\public\TRK
...
[SWE]
MsgTemplateDir = D:\PROGRA~1\SIEBEL\7.8\WEBCLI~1\msgtempl\TRK
This example, where you set the Language parameter to TRK and set the ResourceLanguage parameter to
ENU, or another value, supports one localization scenario.
The Language parameter is equivalent to the server parameter Language Code. The ResourceLanguage
parameter is equivalent to the server parameter OM - Resource Language Code.
In the configuration file, replace other language references, such as enu or ENU, with trk or TRK, where
appropriate, to support your unshipped language.
15) Modifying Application Shortcuts for Mobile Web Clients
In this case you might copy the shortcut for Siebel Call Center - ENU and rename itSiebel Call Center TRK. Modify the properties of this shortcut so the shortcut target is similar to the following:
"C:\Program Files\Siebel\7.8\web client\BIN\siebel.exe" /c
"D:\PROGRA~1\SIEBEL\7.8\WEBCLI~1\bin\TRK\uagent.cfg"
16) Testing an Unshipped Language
To test the Siebel applications for the unshipped language

a.
Restart the Siebel Server and the Web server to have the new settings take effect. This step also
copies static files from the Siebel Server to the Web server.
b.

Start the Application Object Manager for your unshipped language TRK

If you copied elements from the base language ENU to use for the unshipped language TRK, the
application user interface should appear in ENU language.
17) Configuring MLOV
Lists of values (LOVs), which are used in static picklists in the Siebel application user interface, are also
localized for many multilingual deployments. LOVs may also be converted into multilingual lists of
values (MLOVs). MLOVs and multilingual picklists allow values to be selected by a user in one language
and retrieved
by users working in other languages. The value that is stored in the database for the record is the
Language Independent Code (LIC) from the LOV record, rather than the Display Value, as is true for
monolingual picklists.
For MLOVs to work correctly, Language Independent Code (LIC) and Display Value must always be
consistent within the same LOV type and language, as follows:
If you have two records with the same LIC, LOV type, and language; make sure that both records point
to the same display value.
If you have two records with the same display value, LOV type, and language; make sure that both
records point to the same LIC.
All Picklists based on the LOV type must be Static and Bounded.
Please follow below steps for configuring MLOVs.
a.
Identify the LOV types for which we need multilingual value display. For e.g SR_STATUS
b.

Connect to Tools server

c.

Select Flat Tab in Object Explorer

d.

Choose Columns

e.

Query for the LOV type (e. g SR_STATUS) selected in step a in property LOV Type.

f.

Lock all returned rows using Alt+ L. In case of SR_STATUS 3 rows will be returned.

g.

Populate S_LST_OF_VAL in Translation Table Property

h.

Make sure that all the rows have Static/ LOV Bounded property set as True.

i.
Add Translations for the LOVs using LOV administration screen by copying original record and
changing Display value and Language code to Target language.
j.

Make sure that the Multilingual and Translate flags are set True for all necessary LOV rows.

k.
Query for LOV Type definition record by selecting Type value as LOV_TYPE and value as LOV
Type under consideration (SR_STATUS).
l.

Set Translate and Multilingual flags to True for definition record.

m.

Clear cache and re-login before verifying changes.

Apart from doing above configuration some special care is required in case of Hierarchical LOVs.
a.
While populating Parent LICs for LOVs make sure that you select appropriate Parent LIC
belonging to the same language. In other words Parent LIC for English record must be English definition
of Parent LOV definition while Parent LIC for Turkish record must be Turkish definition of Parent LOV
definition.
18) Multi-Organizational consideration
One major consideration that applies while devising multi-organizational implementation is ownership of
records.
While doing configuration one must make sure that every record in system is stamped with Organization
Id. This same applies to LOVs also. Hence while working in multi-organization environment the LOVs
should be created in LOV Explorer rather than creating in LOV Administration screen as in LOV explorer
screen we have access to Organization field. Special configuration is required on entities like Call reports,
Activities etc so as to make facility of populating organization on those records.
Apart from the above data considerations, significant changes are required to be made to the Currencies if
the organizations involved use separate currencies. This can be done in currency administration screen by
defining/ using appropriate currency. Siebel provides OOTB currency converters using which amounts
entered in one organization can be automatically be retrieved and converted into target currency if
viewed from different organizations visibility. However manual intervention is necessary since the
currency exchange rates are volatile and can not be automatically fed to Siebel on regular basis. They must
be modified manually by admin.
Currency can be associated to organization in Organization definition screen. This is the same screen in
which Locale for organization can also be defined. However if these fields are left blank; the currency and
locales are taken from parent organization.
19) Completing Localization for an Unshipped Language
To complete localization for the unshipped language TRK, you must translate all appropriate content that
is associated with this language.
When you have translated repository elements, you would compile the SRF file for this language and
distribute this file to Siebel Servers and Siebel Mobile Web Clients, into the TRK subdirectory for your
language under the Objects directory.
Language-specific content you can translate or create includes items listed below.
(In Siebel Tools) Localizable Siebel Repository strings in the Siebel Database. Add translations for
symbolic string references, object locales, message categories, and so on.
(In Siebel application) Translatable language-specific values (Display Value field) for lists of values
(LOVs) and multilingual lists of values (MLOVs).

Add all values you need for your new TRK language. For example, LOVs used by workflow processes
must be localized into the new language.
(In Siebel application) Other seed data such as time zone translations, iHelp files, Smart-Scripts,
correspondence templates, email templates, Siebel Anywhere administration data, and so on.
Text that appears in image files or Web template files.
Test all changes before you complete the project and roll out the localized application.

Вам также может понравиться