SimpleOne supports multilanguage localization. You can add the language you need and translate interface elements accordingly. In the out-of-the-box SimpleOne solution two languages are available: Russian and English.
You can localize the following elements:
You can upload it into the system, set up links between the localized version and the original version.
Role required: admin.
Adding a language
To add a new language, please follow the steps below:
- Navigate to System Localization → Languages.
- Click New and fill in the fields.
- In the Language field, specify the language code of localization. You can write no more than two symbols. Then fill in the Name field.
- Click Save or Save and Exit.
Now you can refer to this Language (sys_language) table to build your localization. The language will also appear in Preferences Menu.
Localizing interface elements
Befor starting the localization, please check that all necessary languages are created in the Languages (sys_language) table.
You can localize fields of the Translated Text type in two ways:
- by creating a record in System Translations table
- by switching the system language.
To add new translations, please complete the steps below:
- Open the record for which you want to add a translation.
- Navigate to the Related Lists area.
- In the Translations tab, click New and fill in the fields.
- Click Save or Save and Exit to apply changes.
Another way to add localization via System Translations is the following:
- Navigate to System Localization → System Translations.
- Click New and fill in the fields.
- Click Save or Save and Exit.
In this case, you should type the record ID manually.
Translated text form fields
Field | Mandatory | Description |
---|---|---|
Column | Y | Specify the column name containing the field that you need to translate. |
Language | Y | Specify the language of the translation. The field references to the records stored in the Languages (sys_language) table. |
Value | Y | Type the translation of the original value. |
Record | Y | Unique ID number of the record. Automatically filled, if you translate via Related Lists of the record. If the ID field is empty, type the ID of the record. |
To localize elements by switching the system language, please perform the following steps:
- Open the record you need to translate.
- In the Settings menu, change the language of the system to the localized one.
- Enter a new translation.
- If the system language is English, you should type the new value in English.
- Click Save or Save and Exit to apply changes.
To check if the translation is saved correctly, scroll down to the Related Lists area, and open the Translations tab.
Choice list translation
The localization of choice list option differ from the localization of any field of the Translated Text. To localize a choice list, please complete the steps below:
- Navigate to System Settings → Choice Options.
- Click New and fill in the fields.
- Click Save or Save and Exit to apply changes.
Translated choice option form fields
Field | Mandatory | Description |
---|---|---|
Table | Y | Specify the table to which this choice option is related to. Select the same table for the translated version as for the original one. |
Column | Y | Specify the column to which this choice option is related to. Select the same column for the translated version as for the original one. |
Title | Y | Type the translation of the source field. |
Language | Y | Here specify the language code (ru, en, and so on). Generally, references to languages are stored in the Languages (sys_language) table. |
Value | Y | Type the same value as specified for the source field in the original version. Please do not enter the translation in this field. Value can be used in business logic. It is not displayed in the interface. |
Order | Y | Enter the number to define the option order in the choice list. |
Repeat these steps for other choice options.
If some of the choice options were not fully localized, choice lists with untranslated options will display English values by default, regardless of the current user locale.
To avoid such situations, please be careful when adding option values to your choice lists.
Localizing static interface elements
To localize static interface elements, such as welcome messages, informational or warning messages, some other kinds of messages, and also Condition operators, you will need two tables:
- the Source Messages (source_message) table – contains original messages in English.
- the Messages (message) table – contains localized messages in the user's languages (Russian, Hindi, etc).
source_message
Field | Mandatory | Type | Description |
---|---|---|---|
Message | Y | Text | The text of the message |
message
Field | Mandatory | Type | Description |
---|---|---|---|
Source Messages | Y | Reference | Reference to the Source Messages (source_message) table. |
Language | Y | String | Here specify the language code (ru, en, and so on). Generally, references to languages are stored in the Languages (sys_language) table. |
Translation | Y | Text | The translated message. |
These two tables are bound by ID. It means that every message in the Source Messages table has a unique ID, and its translated version in the Messages table has the same ID.
For example, the "Login" record in the Source Messages table has ID 15596431050000002, as well as the "Логин" record has in the Messages table.
To add new translations of the message via Source Messages, please complete the steps below:
- Navigate to System Localization → Source Messages.
- Open the necessary record.
- Open the Messages tab in the Related Lists area.
- Click New and fill in the fields.
- Click Save or Save and Exit.
You can also see the translated variants of any message in the Messages table.
To localize a message, please take the following steps:
- Navigate to System Localization → Messages.
- Click New and fill in the fields. In the field Source Messages you should specify the exact message you want to localize.
- Click Save or Save and Exit.
Please do not change original messages in the Source Messages table. It can cause malfunction on the instance. If you need to make changes in any source message, create a copy of it in the Messages table with the necessary text and fill in the Language field with the 'en' value.
Localization API
In SimpleOne, we have the SimpleMessage API class with the getMessage() message in it, which is taking in an original message from the Source Message (source_message) table and returns a message in the user's language that is set as default in the system. To learn more, please refer to the SimpleMessage article.
Also, you can use the s_i18n client-side class that intended to work with translated messages. It has two methods: getMessage() and getMessages(), that allow to get one or many messages in user language, respectively. For more information, please refer to our API reference containing information about this class.
Editing translations
Editing the translation of interface elements
There are two ways to edit translated elements of the table. To edit any record via the Related Lists area, please follow these steps:
- Navigate to the record you want to edit.
- In the Related Lists area, open the Translations tab.
- Find the translation that needs editing, change the Value field.
- Make necessary changes, click Save or Save and Exit.
Another way to edit the translation is via the System Translations table.
To perform the editing, please complete the steps below:
- Navigate to System Localization → System Translations.
- Open the record that needs changes.
- Edit it, click Save or Save and Exit.
Editing the translation of choice options
The steps for editing the translation of choice options is similar to creating translations.
To edit the translation of choice options, please take the following steps:
- Navigate to System Settings → Choice Options.
- Open the record.
- Edit the Title field.
- Make necessary changes, click Save or Save and Exit.
Editing the translation of static interface elements
Since the two tables Source Messages (source_message) and Messages (message) are bound by the same ID, you can edit flash messages, Condition Operators in both of them.
To make changes via the Messages (message) table, please complete these steps:
- Navigate to System Localization → Messages.
- Open the necessary message or operator.
- Edit Translation.
- Make changes, click Save or Save and Exit.
To edit the translation via the Source Messages (source_message), please take the following steps:
- Navigate to the necessary message.
- In the Related Lists, open the Messages tab and find the translation you need.
- Edit it, click Save or Save and Exit.
- No labels