Internationalization and localization
With careful attention to design, a single Pega Platform application can support users who:
- Work in different time zones from each other and from the time zones of the server or servers.
- Follow different work schedules and holidays.
- Follow local cultural conventions for presenting dates, numbers, and times.
- Work in different languages from each other, or in multiple languages.
- Use languages or alphabets that sort text values (such as customer names) according to language-specific conventions, rather than American English conventions.
All this can occur while these users share the common set of underlying rules, logic, and business benefits the application provides.
These capabilities increase the value of your application by allowing enterprise-wide or worldwide use without extensive training, reconfiguration, or replication. Business logic changes (to decision rules, flows, and so on) affect users identically and simultaneously, regardless of their language or location.
Locale
A locale is one of the standard codes in the format aa_BB_CC, where aa represents the language and _BB or _BB_CC represents a country variant suffix. For example, it_IT is the locale for Italian as spoken in Italy, de_DE is German as spoken in Germany, and de_CH is Swiss German. (In Microsoft Windows, the locale codes use a hyphen rather than an underscore character and sometimes omit the second and third portion for the dominant country, such as fr for the French language as spoken in France.)
Every Windows workstation has a locale setting, recorded in the Regional Settings control panel. Pega Platform detects this setting and uses it automatically to determine the formats for dates, times, and numbers both on display and input. Thus, a United Kingdom user can enter and view dates in the format 14/12/2004 while the United States coworkers enter and view dates in the format 12/14/2004.
Similarly, the UK user sees 15:15 as the time when the United States worker sees 03:15 P.M. as the time. The internal representation of dates and times supports both users. This capability requires no Pega Platform configuration, and, for most Windows workstations, no additional font installations.
Every user session has a locale setting that can affect the language presented by Pega Platform user interface when displaying or entering dates, times, and monetary values. Standard locale names have the format aa_BB_CC, where aa represents a language, _BB is an optional country variant, and _CC is an optional subvariant.
For example, by choosing fr_FR as a locale, a user operating in France may enter and display dates and amounts using European conventions even if the Pega Platform server is in the United States and other users of that system use United States conventions for dates. (In Microsoft Windows, the locale values use a hyphen rather than an underscore character and sometimes omit the second and third portion for the dominant country, such as for the French language as spoken in France.)
Pega Platform determines your initial locale from a browser setting. To
see your current settings when using Internet Explorer, select Tools >
Internet Options > General > Languages. (You can change this through
the Windows Regional Options
control panel.)
Users can override the locale setting temporarily using the Locale Settings tool, choosing from a drop-down list of text labels that each translates to a locale. The value set in the Locale Settings tool does not affect other processing by a browser or Windows. Equivalently, an activity can call the PublicAPI method setLocale() to accomplish a this temporary override, using internal locale format. In either approach, the new locale setting stays in force until the user session ends or until a later call to the setLocale() method.
Many standard control rules support input and output of locale-specific formats and spelling dictionaries, referred to as localization.
Localization operates completely only for users who have WorkManager, WorkUser, Manager, or User portal rules (or similar portal rules) as the Default Portal Layout on the Settings tab of the access group instance. Localization is not complete if you use the Designer Studio as Default Portal Layout and later open a second portal that uses the WorkManager or WorkUser portal rule.
Pega Platform uses the Unicode CLDR 1.3 standards for date and time patterns by locale and other internationalization features. Details of daylight savings time support depend on the JVM version supporting your system.
For a list of locales and the corresponding text description in Oracle's JDK, see the Oracle knowledge base:http://www.oracle.com/technetwork/java/javase/locales-137662.html
Depending on the control rule used to present a property, property values for dates, numbers, and times can be presented either with or without localization. Most standard properties use localization.
Fonts
Workstation fonts are managed by Windows software. If an Internet Explorer display references a font not installed, it may not render correctly. To remedy this, install an appropriate font. Select Tools > Internet Options and click Fonts to see which fonts are missing.
Consult PDN article How to enable workstation support of international fonts and languages for additional information about workstation fonts.
Language-specific rulesets
A language-specific ruleset name consists of an application ruleset name followed by a single underscore and a locale code. For example, for the application defined in the ALPHA ruleset, the value ALPHA_it_it identifies an Italian-specific ruleset.
Developers can create and add rules to such rulesets. Typically however, such rulesets contain field value rules that localize words or phrases from portal rules, harnesses, and sections. The decision rules, flows, activities, properties, and other rules that determine the functions and results of the application are not needed in language-specific rulesets.
Language-specific user forms and portals
Application facilities visible to application users are determined primarily by:
- Harnesses ( Rule-HTML-Harness rule type)
- Sections ( Rule-HTML-Section rule type)
- Flow actions ( Rule-Obj-FlowAction rule type)
- Message rules ( Rule-Message rule type)
- Portal rules ( Rule-Portal rule type)
- Paragraph rules ( Rule-HTML-Paragraph rule type)
In addition, application users see and interpret the Short Description fields on certain class rules and flows.
Through a careful design and implementation effort, your application can be presented in a second language or in any one of multiple languages using language-specific rulesets that each contains only a collection of field value rules. Users can work in the language of their preference or the language of a customer or party with whom they are communicating by phone or email. The fundamentals of your application — flows, activities, properties, and so on — operate as before with no translation required, simultaneously supporting users who work in different languages.
Language-specific correspondence
The correspondence your application sends is derived from correspondence rules ( Rule-Obj-Corr rule type) and correspondence fragments. By creating language-specific correspondence rules and fragments, your application can respect the language preference of a party. For example, if a party prefers French and a French-language correspondence rule is available, an English-speaking user can send an email message or letter in French (provided no editing is needed).
Character sets
Your Pega Platform installation and PegaRULES database can be installed with UTF-16 Unicode character set support. Note that this is an installation option; you can't enable UTF-16 after installation on a system that was installed with the UTF-8 character set.
Input Method Editor
Pega Platform supports the Microsoft Windows Input Method Editor (IME) to enter complex characters in four different East Asian languages - simplified and traditional Chinese, Japanese, and Korean - using the standard keyboard.
The IME displays three windows to guide the user through character entry: a reading window, a composition window, and a candidate window. The details of configuration and implementation are described in Installing and Using Input Method Editors.
Wizards
Pega Platform includes two wizards that simplify the process of identifying, translating, and creating the field value, correspondence, paragraph, and other rules that support localization:
- The Localization wizard provides a step-by-step facility to identify text elements that need translation and copy them into an Excel spreadsheet. A translator working offline with Excel can provide first-pass translations for these terms; no familiarity with Pega Platform is required.
- The Field Values Inspector allows a translator to view and exercise a localized application (or partly localized application) in context, and revise or extend the translations to fill in gaps or improve the translations.
Currencies
The standard control rule CurrencyAmount presents a monetary amount in the format of a user's default currency, such as 1,234.56/USD.
The standard library Math includes two functions for currency conversion:
-
divisionExchange() — Converts a
Number
property representing one currency value to anotherNumber
property representing another currency value using division. -
multiplyExchange() — Converts a
Number
property representing one currency value to anotherNumber
property representing another currency value using multiplication.
No standard rules reference these two functions. Typically, the currency conversion rates themselves are provided by an external system that is accessed through a connector. Your application retains control over the source of the rate, the computation details, and when and how conversion occurs.