Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page is for application designers who

...

want to

...

translate an application interface

...

into different languages.

Overview

To translate text strings that appear in your application, create a translation table. The translation table contains:

  • The exact text string that appears in the application interface: the entry code
  • The translated text: the translation string
  • The language of the translated text: the language name.

This page explains how to configure translation of text in PhixFlow.

...


Panel
borderColor#7da054
titleColorwhite
titleBGColor#7da054
borderStylesolid
titleSections on this page

Table of Contents
indent12px
stylenone


...

For large organisations, you may need

...

deploy a PhixFlow application across sites in different countries

...

. You can configure some of the text in the application to be displayed in a different language.

Translatable PhixFlow property
containing the source text
Where the text appears in the application

Menu → Name 

The menu name appears an option in a menu.

...

 (star)
Menu item → NameThe menu item name appears as a sub-menu option.

...

(star)
Action → Basic Settings → Display Name


Exception - see below.

Layout component (any) → Description → TooltipFor any layout component, when the user hovers their mouse pointer over the component, PhixFlow displays the tooltip text. 
Layout component for static text → Display Text

Static text appears:

  • in titles, for example on a form
  • or labels on components, such as buttons.
Stream view attribute → Grid Settings → Label 
or if there is no label  → Basic settings → Name

This text appears in a layout or dashboard that displays data:

  • in the column header of a table
  • in the axis label or legend of a chart
An expression defined with the 
translate() function, for example:
Action → Basic settings → In Progress Message
The expression appears as a message, which notifies the user of the progress or completion of an action.

...


(star) Known issue:  when a user first logs into the application the menus are translated. If the user subsequently reloads the application, the menu options revert to the source language.

PhixFlow cannot translate:

  • PhixFlow messages.
  • Stream attributes in analysis models.
  • The data in the stream.
  • Layout component dynamic text, because this displays data from the stream.
  • Grid view → Basic Settings → Name. This appears as the title of the grid when it appears in a layout or dashboard.
  • In a grid view → attribute action → tooltip: if this includes the action display name, it is not translated.
  • Number formats. 

What PhixFlow Does to Translate Text

Translation works as follows:

When a user opens

...

an application, PhixFlow goes through the following steps to determine which language to display:

  1. PhixFlow checks the user's locale.
  2. For

...

  1. source text in

...

  1. a translatable

...

  1. field in the application interface, PhixFlow

...

  1. looks in the translation table.
  2. PhixFlow finds an entry code

...

  1. string that exactly matches the text in the interface.
  2. PhixFlow matches the user's locale language to

...

  1. a language name in the translation

...

  1. table.
  2. PhixFlow displays the translation text for that language instead of the source text.

PhixFlow displays the untranslated source text if it cannot find any translation. This may be because:

  • no translation text is defined
  • the language is not present in the translation table

...

  • there is not exactly matching

...

  • entry code
  • no translation table has been set up for the application.

How to Configure Translation

Step 1.  Set

...

Up Languages and Locales

Why does the locale matter?

PhixFlow is supplied with a set of languages at the system level. These populate the drop-down lists in locales and in the translation table. If you have administration privileges, you can add more languages in the repository; see Language. You cannot add languages

...

at the application level.

You can set up locales at the system level or the application level; see Locale. If all your applications will need to use the same set of locales, it is more efficient to set them up at the system level (in the full repository) rather than at the application level (within the application's repository).

Tip

You may

...

need to move an application to a different PhixFlow

...

instance. For example it is common to design and configure applications in a development instance. When

...

the application is ready to use, it is moved (exported/imported) to a production instance. 

...

If your application is using the system level languages and locales

...

, they must also be present in the

...

If the language you need is not already listed in the Translation table, add the language to the Full Repository. You cannot set up specific languages for the application. 

Can you use the Locales set for the system or copy them into your repository?

Add the locales to your application - or use an existing one?

...

destination PhixFlow instance.

When a user opens an application, PhixFlow checks the user's locale 


  1. In the application repository, right-click Locale and 
    Insert excerpt
    _add
    _add
    nopaneltrue
     Locale.
  2. Enter a name for the Locale, and select a language from the Language Name drop-down list.

You can only delete a language from the repository when it is no longer used by any Locale.

Configuring Translation

Step 2.  Set Up the Translation Table 

To 

It is important to be consistent in capitalisation and to minimise the strings, as you need to create entries that pair the text to all the translations.

Note

Translation does not apply to the PhixFlow interface itself. Any notification, warning or error messages reported by PhixFlow will continue to be in English.

An application is able to translate text using the information in its translation table. The table contains a list of whole text strings which must exactly match those used in the application.

Tip

The translation table must include all variants of a string, for example, with different:

  • spelling variants
  • capitalisation
  • spacing
  • punctuation.

For each text string you must add the translation for each language you want to support. 

It is not possible to break the strings into substrings or translation. For example, you must translate  ‘First Name’ and ‘Family Name’ separately, rather than creating translation strings for 'first', 'family' and 'name'.

Create and populate the translation table

  1. In the application repository, right-click Translation Table and click 
    Insert excerpt
    _add
    _add
    nopaneltrue
    .
  2. In Basic Settings → Name, add a name.
  3. In Translation Entries, add entry codes for each string that you need to translate.
  4. Click 
    Insert excerpt
    _add
    _add
    nopaneltrue
     to open a New Translation Entry properties tab. Set:
    1. Basic Settings → Entry Code: the string that is to be translated - exactly matching how it appears in the interface.
    2. Translation Cell: add an entry for each language the string will be translated into (how?) and set:
      • Translation String to the translated version
      • Language Name to the language

...

Date Time Formats

Depending on a user's locale, PhixFlow can change the way it displays dates and times. The mappings are expressed using dd/MM/yyyy strings. If you want to translate month names or abbreviations, such as "January" is not translated to  "Janvier", "Jan" is not translated to "Janv", use text string translation. 

Step 1.  Create a date-time format

...

  • Name, add a name. Consider relating the name to the locale.
  • Date Time Format String: use d, M, y, H, m and s to specify the format - link to relevant page on dddmmm etc
    If you do not configure any mappings, PhixFlow uses this format to display date-times for all locales.

Step 2.  Map the format to alternative formats for each locale

...

  • Date Format: use d, M, y, H, m and s to specify the format you want to use for the locale, for example dd/MM/yyyy or dd-MM-yy HH:mm:ss.
  • Date Style Name: the Date Style you created for the Locale 
    I cannot add the name and I cannot save the mapping

...

Step 3.  Add the Date Time Format to your Locale

  1. In the application repository, open the locale for your application.
  2. In Basic Settings → Date Style Name, select the format you just created from the drop-down list.

...

Ensure all Date Time Formats are removed from a locale before deleting them from the repository.

...