Localization and multilingual support

Home / Documentation / Administrator guide /

Localization and multilingual support

Introduction

Localization and multilingual support are core application-level principles of the NET Genium platform. NET Genium is designed to support applications that are used in different language and cultural environments without requiring changes to their architecture or application logic.

Application localization

Localization in NET Genium means adapting an application to a specific language and regional context. Typical localization aspects include:

  • user interface language,
  • date and time formats,
  • number and currency formats,
  • regional terminology and conventions.

NET Genium strictly separates localization elements from application logic. As a result, applications can be localized without modifying their functional behavior or compromising system stability.

Multilingual support

Multilingual support represents the ability of an application to operate simultaneously in multiple languages. In practice, this means that:

  • different users can work with the same application in different languages,
  • the selected language is associated with the user or user preferences,
  • changing the language does not affect stored data.

The user's language also affects the number format when entering values and the language of sent e-mails; a script can branch on it using the “#language#” variable or the “LANGUAGE” server function.

NET Genium allows applications to be designed as multilingual from the very beginning, while also supporting the gradual addition of new languages during the application lifecycle.

Writing multilingual texts

The user interface texts of NET Genium itself are translated in the platform dictionaries. Application texts – names, help texts, values of selection lists, script messages – are written directly into the properties of individual elements, in all languages at once:

  • Individual language versions are separated by a marker consisting of the “#” character, a two-letter language code in lowercase and a colon, for example “Obecné#en:General#de:Allgemein”.
  • The user sees the version in their language. If it is missing, the default text before the first marker is displayed.
  • The default text may carry its own code, for example “cs:Obecné#en:General”; the code is not displayed.
  • Values of selection lists are translated one by one, for example “Aktivní#en:Active;Neaktivní#en:Inactive”, and the whole multilingual text is stored in the database.
  • The content of the “RichText” element is not translated as a whole. Continuous text is therefore written into a separate element for each language (the “Language” property), short labels can be translated by the “TRANSLATE” server function. In JavaScript, the “translate” function is used for translation.

The list of texts missing a translation into the languages used by users is shown by the Names to translate report.

The language for the current session can also be changed by the “language” parameter in the page address, for example “Form.aspx?form=12&language=en”.

Language and the user

In NET Genium, the application language is closely tied to the user. The platform supports:

  • setting a preferred language for each user,
  • automatically adapting the user interface based on this preference,
  • combining multilingual environments with permission management.

This ensures that each user works in a language they understand, without affecting other users or shared application data.

Recommendations for designing multilingual applications

When designing applications that support multiple languages, it is recommended to:

  • consider multilingual requirements during the initial application design,
  • avoid embedding fixed texts directly into application logic,
  • use consistent terminology across languages,
  • regularly verify translation completeness.

Following these principles simplifies future development and adaptation to new languages or regions.