Previous Topic

Book Contents

Book Index

Next Topic

Multilingual Translations

Database Support

Multilingual data variants for attributes of an object type are stored in a dedicated database table which must be created for an object type at the moment when at least one of its attributes is specified as 'translated'. This means that a dedicated translation table exists in the database for each object type with at least one translated attribute. See topic 'Generating The Database Support'.

Help Image
The structure of multilingual support for one translated attribute of an object type built on database table 'X'

Main Language of Data

Before actual translations are created for the first time, it is necessary to select the main language of data. This tells the application which language (i.e. values in which language) will be stored in the main database table of the object type as opposed to 'other' (supplementary) languages which will be stored in the dedicated translations table, as depicted in the 'Structure of multilingual support' image above.

Supplementary Languages, Current Language

The translated object type is expanded by a transient 'current language' attribute displaying the translated value from the translations table. What exactly is displayed is subject to a calculation (performed at the SQL level) which can also handle situations such as missing translation in a given language (in which case the main language value is displayed). To sum up, the following "types" of languages can be distinguished:

  • Supported languages

    The set of languages available for use as Valuemation GUI languages. These languages are defined in the 'ValuemationLocales' value set. The value set determines which languages are available both for GUI and data translations.

  • Main language

    The language used for data stored in business objects. If multilingual support is being introduced to a database already filled with data, the language of the already existing data should be selected as the main language. Values in the main language are stored directly in the object type database table.

  • Supplementary languages

    Languages existing in parallel to the main language, i.e. the set of supported languages minus the main language. Values in supplementary languages are stored in dedicated translation database tables.

    For example, if four languages are supported, then the translations table will contain at most three records (with values in the supplementary languages) for each record in the object type table.

  • Current language

    The language currently selected as the application GUI language (on the 'Language' tab of the 'Settings' dialog).

The Translate action

Actual translation is performed using the 'Translate' action. The action needs to be added to a suitable GUI location, for instance to a catalog of the object type which contains one or more translated attributes. See topic 'Adding the Translate Action to GUI'.

Customization Considerations

From the customization point of view, it is important to distinguish between two basic types of users:

  • Users who insert data and thus should be able to also create multilingual translations
  • Users who only use the data and should not be burdened with the complexities of multilingual support

See topic 'Customization Considerations' for more on this issue.

Technical Considerations

Chapter 'Technical Considerations' delves into more technical issues such as conditions which must be met for an attribute to be translatable, attribute size limitations or technical aspects of main and supplementary languages.

In This Chapter

Setting Up Multilingual Translation

Multilingual Translations In Use

Multilingual Support in BPM

Customization Considerations

Technical Considerations

See Also

Translations of Business Data

Valuemation Unicode Support