Skip to main content

Managing package languages / translations

In addition to selecting the default language for your package, you can also enable additional languages that your app content can be displayed in. The following languages are supported: English (US), Dutch, French, German, Italian, Japanese, Portuguese (Brazilian), Russian, and Spanish.

Both your default language and any additional languages need a translation map to be created on a package level. A translation map allows you to identify the terms you want to translate in that language and then assign that term with a unique translation key. This translation key can then be referenced within the YAML for your Views.

Creating a translation map

Before enabling additional languages, your default language must have a translation map within the package.

To create a translation map for your default language, follow these steps:

  1. Click Package Settings - Translations:

    A screenshot showing how to access the package translations.
  2. Click Enable Translations:

    A screenshot showing how to enable translations using the wizard.
  3. Choose your default language and click Confirm.

    A screenshot showing how to choose a default language for your Studio content.
  4. Click Edit:

    A screenshot showing how to edit the default language for your packages when translating your content.
  5. Choose between the two options to manage individual package terms for your default language:

    • Translation mapping from file: This is a three step process:

      1. Download a .csv file pre-filled with your table and column names.

      2. Enter human-readable version names and a unique translation key.

      3. Upload the file to apply the translation mappings.

      The .CSV file should have three columns: the translation key, the default language value, and the target language.

    • Manual name mapping: This requires the terms you want to map to be already available in the default language. Once available there, you can manually add and edit the terms for each enabled language.

      When manually mapping your terms, click Save to ensure your terms are added to the translation map.

      A screenshot showing how to manually save your name mappings when managing your translations.
  6. After managing the terms for your default language, click Back to Package Translations:

    back_to_page_translations.png

You can now enable additional languages for a packages, with further information provided below.

After creating your translation map for your default language, you can now enable additional languages for your package.

For each language you want to offer your package in:

  1. From the Translations page, click Edit.

    A screenshot showing how to edit supported translation languages.
  2. Choose between the two options to map your individual terms (with further information about each option available in Creating a translation map):

    • Translation mapping from file

    • Manual name mapping

  3. After managing the terms for your additional language, click Back to Package Translations:

    A screenshot showing how to click back to your package translations.
  4. Click Active.

    A screenshot showing how to activate languages for your Studio package.
  5. Optional: For your enabled languages to be available within your app, the latest version of the package must be deployed.

When working with package dependencies, it's important to understand how translations are handled:

  • Translations aren't copied over: When you assign a package dependency or perform an "update dependency" operation, the translation maps from the dependent package are not automatically copied to the source package.

  • Translation keys may appear: If an extension asset within your source package relies on a base asset from the dependent package that already has been translated, the extended asset will display the raw translation keys instead of the translated terms. This occurs because the source package lacks the necessary translation map to resolve those keys.

  • Manual resolution required: To ensure that translation keys from the dependent packages are correctly resolved in your source package, you must manually download the translation map (e.g., as a .csv file) from the dependent package and then upload it to your source package. This action provides the source package with the necessary mapping to display the translated terms.

You are also prompted to correct missing translations when your current View contains terms that don’t have corresponding translation keys in enabled languages.

A screenshot showing the error icon when your package contains content that isn't currently being translated.

When correcting missing translations, the tool scrapes all strings from the YAML configuration and adds them to the translation map.

You can also translate your package variables, allowing you to provide mapped terms for each language you have enabled.

Variables are converted into a parameterized variable, such as {0}, and are added in numerical order from zero upwards:

  1. First {0}

  2. Second {1}

  3. Third {2}

The order in which the variables are passed to the key is important. So, {0} represents the first variable passed to the key, {1} represents the second, and so forth.

The language set in the user’s profile is displayed by default when viewing your app. Users can then manually switch between the available languages using the Translations menu:

A screenshot showing how to switch between active languages within an app.

This feature is currently available as a Private Preview only

During a Private Preview, only customers who have agreed to our Private Preview usage agreements can access this feature. Additionally, the features documented here are subject to change and / or cancellation, so they may not be available to all users in future.

If you would like to use this feature, create a Support ticket at Celonis Support.

For more information about our Private Preview releases, including the level of Support offered with them, see: Feature release types

In Analyses, translation name items are saved as name mappings in the Data Model. In Views, translations are saved in the package settings.

Before migrating your Analysis to Views, you should import the name mappings from the Analysis to the View. This ensures your translated items are retained and are available in the View. The name mappings are automatically updated, with the name mapping key syntax #{name} used in the Analysis updated to the package translation syntax in Views "t(name.name)".

For more information about migrating analyses, see Migrating Analysis to Views.

  1. Open the View you want to migrate your Analysis to.

  2. Select Translations > Manage Languages.

    The Package settings screen appears.

    The Package settings screen with no translations displayed
  3. In your default language, select edit mode.

    The translation map information appears. The translation map is empty here as the translation map hasn't been added yet.

    The Package settings screen with an empty translation map and the Add translation key button displayed
  4. Select +Add Translation Key.

  5. Enter the Analysis translation key and the key value for the default language.

    Important

    The translation key is used in the Analysis and has format #{name}. In the Analysis, enter edit mode and select Translate for the component title. The translation key will display.

    In this example, the translation key is #{LFB1} and this is added here as lfb1. The key value is Company Code.

    The Package settings screen with a translation key added for company code
  6. Select Save.

  7. Select edit mode for a language you have translation content for in your Analysis.

  8. Enter the key name in that language.

    The Package settings screen with a German translation for company code added for the translation key
  9. Select Save.

  10. In the View, select the component that has been added and change the component title to the Views translation key syntax.

    Tip

    The translation key syntax in Views is "t(name.name)". In this example, we'd use t("lfb1")lfb.

  11. Select edit mode for your default language and select Import > Import from Data Model.

    Import translations from Data Model screen showing the translation keys and the English translation for each
  12. Select Import.

  13. Repeat steps 10 to 12 for each language you want to import translations for.

    Import translations from Data Model screen showing the translation keys and the English and German translations for each

    The translations are available and can be selected from the Views Translations menu.