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.
Languages Table in the Configuration Panel (Administrator view)
Language management is performed from the Configuration Panel, in the Languages section.
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:
-
Click the New button in the upper right corner.
-
Fill in the fields in the wizard:
-
i18nCode: language code in standard format. -
Description: name of the language.
-
-
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 theTranslationstable. The easiest way is to duplicate the translations of an already configured language (e.g.: Spanish or English) and update:-
The
languagefield with the newi18nCode. -
The
valuefield with the corresponding translation.
-
-
Additionally, the action
Actions > Upload Translation Filesmust 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
Translationsthat reference thei18nCodeof 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_languagetable 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: |
|
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:
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.