Configuration
Breadcrumbs

Languages

Internationalization in Anjana Data begins with the definition of the languages available in the platform.
These languages are registered in the Languages table, and the translations stored in the Translations table rely on them so that users can view the application in their own language.

It is essential that, after creating a new language, its corresponding translations are also configured to ensure the application is fully accessible in that language.

image-20250915-153840.png
Example of a User Profile where the platform's display language can be selected

Languages Table in the Configuration Panel (Administrator view)

Language management is performed from the Configuration Panel, in the Languages section.

image-20250915-142459.png
Languages table for registering languages in the platform

Structure of the Languages table

Each registered language is characterized by the following fields:

  • Id: unique table identifier (automatically assigned).

  • i18nCode: language code according to the i18n standard (e.g.: en-US, es-ES, fr-FR).

  • Description: descriptive name of the language (e.g.: English, Español, Français).

Adding a Language to the Languages table

To add a language from the configuration panel:

image-20250915-143202.png
Example of adding American English as a language
  1. Click the New button in the upper right corner.

  2. Fill in the fields in the wizard:

    • i18nCode: language code in standard format.

    • Description: name of the language.

  3. Click Save to save the record or Cancel to discard it.

Note: After adding a language, it is necessary to run the Clear cache action from the Configuration Panel (Actions > Clear cache) for the changes to take effect and become visible in the Data Portal.

Notes:

  • After adding a new language in Languages, it is necessary to include all its translations in the Translations table. The easiest way is to duplicate the translations of an already configured language (e.g.: Spanish or English) and update:

    • The language field with the new i18nCode.

    • The value field with the corresponding translation.

  • Additionally, the action Actions > Upload Translation Files must be run from the Configuration Portal so that the new translations are available in the Data Portal.

  • The iconography associated with languages is automatically included by the platform. See Visual configuration and styles

Modifying a Language in the Languages table

Modifying an existing language must be done with caution.

  • i18nCode: should not be modified except in cases of configuration error, as this value is the reference key for translations and for multiple internal processes in Anjana Data.

  • Description: can be freely modified to adjust the visible name of the language.

Note: After modification, it is necessary to run the Clear cache action from the Configuration Panel (Actions > Clear cache) for the changes to take effect and become visible in the Data Portal.

Note:
Modifying a language does not impact governed objects, but it does affect the display of text.
If changes are made to the i18nCode, it will be necessary to manually update the entries in the Translations table to maintain consistency, as well as run the action Actions > Upload Translation Files from the Configuration Portal so that the new translations are available in the Data Portal..

Important: Deleting a language may cause errors in the following cases:

  • If there are translations in Translations that reference the i18nCode of the language to be deleted.

  • If any user has selected the language to be deleted in their profile. In this case, it is recommended to delete the records associated with the language in the zeus.user_language table of Anjana Data's internal data model.

Language Configuration via Direct Database Access (Developer view)

The available languages are stored in the zeus.languages table.

Column

Data type

Constraints / Notes

id

int4

PRIMARY KEY. Unique language identifier. Managed by sequence.

i18n_code

varchar(255)

NOT NULL. Must be unique (constraint: languages_i18n_code_key). Standard i18n code.

description

varchar(255)

NOT NULL. Name of the language. Can be used as a key in the translations table.

Below is an example of adding a language:

SQL
INSERT INTO zeus.languages
(id, description, i18n_code)
VALUES(2, 'English', 'en-US');

Important:

  • Once the insert has been executed, run the sequence update for the table. (From the Configuration Panel under Actions > Reset DQ sequences, the sequences of all tables, including this one, can be updated).

  • All the weight of the configuration logic falls on the developer who executes the SQL queries directly against the tables. It is recommended to carefully review the Table Structure section.