Populating a Language
Copy
Once a language has been defined, there are two main ways to populate the language. You can:
- Manually enter all language data through the UI.
- Import a language using the Aras Innovator Language Pack Management Utility.
All multi-lingual deployments of Aras Innovator eventually need to manually configure languages in Aras Innovator, to account for its specific customization.
Once you have defined a language, refer to section 2.2.3 Defining a Language, you can add values to this language for each of the UI elements.
Editing ItemTypes
| ItemType | Property | Use | Where to edit in the UI |
| Action | Label | Displays in the Action menu of the toolbars | Administration\Actions |
| Activity Template | Label | Text to display the Activity message of a workflow | Administration\Workflow Maps property on the Activity |
| Activity Template | message | Text to display the Activity label of a workflow | Administration\Workflow Maps property on the Activity |
| Activity Template Task | description | Text to display the Task description of a Workflow Activity | Administration\Workflow Maps under the Tasks label Relationship of an Activity |
| Activity Template Variable | Label | Text to display the label of an Activity Variable of a workflow | Administration\Workflow Maps under the Variable label Relationship of an Activity |
| CommandBarButton | Label | Text to display the label of a command bar button | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarButton | Label | Text to display the label of a command bar button | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarButton | tooltip_template | Text to display the tooltip of a command bar button | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarButton | tooltip_template | Text to display the tooltip of a command bar button | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarDropdown | Label | Text to display the label of the command bar dropdown | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarDropdown | Label | Text to display the label of the command bar dropdown | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarDropdown | tooltip_template | Text to display the tooltip of the command bar dropdown | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarDropdown | tooltip_template | Text to display the tooltip of the command bar dropdown | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarEdit | tooltip_template | Text to display the edit tooltip of the command bar | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarEdit | tooltip_template | Text to display the edit tooltip of the command bar | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarMenu | Label | Text to display the label of the command bar menu | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarMenu | Label | Text to display the label of the command bar menu | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarMenuButton | Label | Text to display the label of command bar buttons | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarMenuButton | Label | Text to display the label of command bar buttons | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarMenuCheckbox | Label | Text to display the label of command bar checkboxes | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section\Command Bar Item |
| CommandBarMenuCheckbox | Label | Text to display the label of command bar checkboxes | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| CommandBarSection | Label | Text to display the label of command bar section | Administration\Client Presentation\Global\Presentation Configuration\Command Bar Section |
| CommandBarSection | Label | Text to display the label of command bar section | Administration\ItemTypes\Client Styles on the Command Bar Section relationship |
| Business Calendar Exception | description | Text displayed to describe a Business Day exception. | Administration\Calendars on the Exceptions label relationship |
| Field | Label | Text displayed to label a field in a form | Administration\Forms on the Field Label relationship |
| Field | legend | Text displayed to label a field border in a form | Administration\Forms on the Field Border relationship |
| Filter Value | Label | Text displayed in pick lists of a filtered list in the UI | Administration\Lists on the Filter Value relationship |
| Grid Column | Label | Text displayed in Configurable Grid column headers | Administration\Grids on the Grid Column relationship |
| History Action | Label | Text to display the label of history action | ItemType not exposed through UI by default |
| History Action | Comment_text | Text to display the label of history action comment text | ItemType not exposed through UI by default |
| ItemType | label_plural | Text used in TOC | Administration\ItemTypes |
| ItemType | Label | Text used in item properties, and Item window title | Administration\ItemTypes |
| Life | Label | Text displayed to label a state of a lifecycle | Administration->LifeCycles on the Life Cycle State properties |
| Message | Text | Text displayed for a notification message | Administration->Notification Messages |
| Message | Title | Title of the notification message | Administration->Notification Messages |
| PM_ProjectGridLayout | Label | Text displayed in the column header of the Project grid | Administration\Preferences on the Project Grid Layout relationship of the World Preference |
| Property | Label | Text used in the search grid column headers | Administration\ItemTypes on the Properties relationship |
| Property | default_value | Text used in the default value of a multi-lingual string property | Administration\ItemTypes on the Properties relationship |
| RelationshipType | Label | Text used the relationship tabs in Item windows | Administration\RelationshipTypes |
| Report | Label | Displays in the Report menu of the toolbars | Administration\Reports |
| SearchMode | Label | Text used to display the different search modes | ItemType not exposed through UI by default |
| SecureMessageViewTemplate | Thumbnail_tooltip_template | Text to display thumbnail tooltip | Adninistration\Forms\SecureMessageViewTemplate on the Field Label relationship |
| SecureMessageViewTemplate | Sketch_tooltip_template | Text to display sketch tooltip | Adninistration\Forms\SecureMessageViewTemplate on the Field Label relationship |
| SelfServiceReportHelp | Rich_help_text | Text to display help text | ItemType not exposed through UI by default |
| SSVCPresentationConfiguration | Form_tooltip_template | Text to display form tooltip | ItemType not exposed through UI by default |
| UserMessage | Text | Displays in custom error messages in the UI | ItemType not exposed through UI by default |
| Value | Label | Text displayed in pick lists in the UI | Administration\Lists on the Value relationship |
| Workflow Map | description | Text displayed for description of a workflow | Administration\Workflow Maps |
| Workflow Map | Label | Text displayed in UI for name of a workflow | Administration\Workflow Maps |
| Workflow Map Path | Label | Text to display the vote path between two Workflow Activities | Administration\Workflow Maps on a path between two activities |
| Workflow Map Variable | Label | Text to display the label of a Wokflow variable | Administration\Workflow Maps on the Process Variable relationship |
Each row in the table above represents a property in the user interface that has been defined as a multi-lingual string. The translator needs to edit each Item of that type that needs to display a non-English value.
To aid in the ability to move language packs from one database to the next, Aras has created a Language Pack Management Utility to export and import language values from a database. The Language Pack Management Utility is a command line utility that imports and exports language packs from the Aras Innovator database on a SQL level. The following section explains how to use the utility available in the Language Pack Management Utility folder of the Aras Innovator CD Image or from the Aras Community Projects site at http://www.aras.com/communityProjects/default.aspx.
The Command Line
There are several elements to the Language Pack Management Utility command line tool. First, is the executable file for the Language Pack Management Utility itself, LanguageTool.exe. The details of the various options for running the executable at the command line are as follows:
Usage: LanguageTool.exe [-export/-import] [-config_file:<file path>] [-folder:<folder path>] [-log_file:<file path>] [-log_level:<log level> ] [-server:<SQL server name>] [-db:<database name>] [-login:<login name>] [-pwd:<login password>] Where:
-export/import: This is the required parameter to indicate if the operation is to export or import a language.- -
config_file: (Optional) The path to the configuration file for current operation, ImportConfig.xml or ExportConfig.xml. - -
folder: (Optional) The path to the data folder. This is the output folder for the export operation or the input folder for the import operation. -log_file:(Optional) The path to the log file.-log_level:(Optional) The logging level (high, medium, low).-server:(Optional) The name of the Microsoft SQL Server instance where the Aras Innovator database is installed.-db:(Optional) The name of the Aras Innovator database.-login:(Optional) The Aras Innovator login assigned to the Aras Innovator database.-password:(Optional) The password for the Aras Innovator login assigned to the Aras Innovator database.
LanguageTool.exe.config configuration file, but the command line parameters take precedence.
LanguageTool.exe.config
The LanguageTool.exe.config configuration file that is referenced by the Language Pack Management Utility is a straightforward xml file that defines the parameters for the batch load activity.
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <sectionGroup name="userSettings” type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > <section name="Aras.Tools.I18N.ExpImpMLData.Properties.Settings” type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser” requirePermission="false"/> </sectionGroup> </configSections> <userSettings> <Aras.Tools.I18N.ExpImpMLData.Properties.Settings> <setting name="config_file” serializeAs="String"> <value>C:\German\ImportConfig.xml</value> </setting> <setting name="folder” serializeAs="String"> <value>C:\German\data</value> </setting> <setting name="log_file” serializeAs="String"> <value>C:\German\log.txt</value> </setting> <setting name="log_level” serializeAs="String"> <value>high</value> </setting> <setting name="server” serializeAs="String"> <value>localhost</value> </setting> <setting name="db” serializeAs="String"> <value>InnovatorSolutions</value> </setting> <setting name="login” serializeAs="String"> <value>innovator</value> </setting> <setting name="pwd” serializeAs="String"> <value>innovator</value> </setting> </Aras.Tools.I18N.ExpImpMLData.Properties.Settings> </userSettings> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/> </startup> </configuration> To help understand how to configure this file, the example above can be broken down line by line:
<setting name="config_file” serializeAs="String"> <value>C:\German\ImportConfig.xml</value> </setting> This is the path to the path to a configuration file for current operation, ImportConfig.xml or ExportConfig.xml.
<setting name="folder” serializeAs="String"> <value>C:\German\data</value> </setting> The path to the data folder. This is the output folder for the export operation, or the input folder for the import operation.
<setting name="log_file” serializeAs="String"> <value>C:\German\log.txt</value> </setting> This is the path to the log file.
<setting name="log_level” serializeAs="String"> <value>high</value> </setting> This is the logging level, ‘high’ recommended.
<setting name="server” serializeAs="String"> <value>localhost</value> </setting> The name of the Microsoft SQL Server instance where the Aras Innovator database is installed. This value can be found in the Aras Innovator InnovatorServerConfig.xml in DB-Connection tag. (server="localhost”)
<setting name="db” serializeAs="String"> <value>InnovatorSolutions</value> </setting> This is the name of the Aras Innovator database in SQL Server. This value can be found in the Aras Innovator InnovatorServerConfig.xml in DB-Connection tag. (database=‘InnovatorSolutions’)
<setting name="login” serializeAs="String"> <value>innovator</value> </setting> This is the login assigned to Aras Innovator user of the Aras Innovator database in SQL Server. This value can be found in the Aras Innovator InnovatorServerConfig.xml in DB-Connection tag. (uid=‘innovator’)
<setting name="pwd” serializeAs="String"> <value>innovator</value> </setting> This is the name login assigned to the Aras Innovator user of the Aras Innovator database in SQL Server. This value can be found in the Aras Innovator InnovatorServerConfig.xml in DB-Connection tag. (pwd=‘innovator’)
Any of the parameters may be left out as long as the command line equivalent parameter is defined.
Export Configuration
In order to export a language pack from the Aras Innovator database, you need to define what languages and ItemTypes to export. The definitions of these settings are found in the ExportConfig.xml.
<export> <languages list="en, de” /> <itemtype name="Action” /> <itemtype name="Activity Template” /> <itemtype name="Activity Template Task” /> <itemtype name="CommandBarButton” /> <itemtype name="CommandBarDropDown” /> <itemtype name="CommandBarEdit” /> <itemtype name="CommandBarMenu” /> <itemtype name="CommandBarMenuButton” /> <itemtype name="CommandBarMenuCheckbox” /> <itemtype name="CommandBarMenuSeparator” /> <itemtype name="CommandBarSection” /> <itemtype name="CommandBarSeparator” /> <itemtype name="Field” /> <itemtype name="FileSelectorTemplate” /> <itemtype name="Filter Value” /> <itemtype name="Grid Column” /> <itemtype name="History Action” /> <itemtype name="ItemType” > <properties list="label,label_plural” /> </itemtype> <itemtype name="Life Cycle State” /> <itemtype name="PM_ProjectGridLayout” /> <itemtype name="Property” > <properties list="label,default_value” /> </itemtype> <itemtype name="RelationshipType” /> <itemtype name="Report” /> <itemtype name="SearchMode” /> <itemtype name="SecureMessageViewTemplate” /> <itemtype name="SelfServiceReportHelp” /> <itemtype name="SSVC_Preferences” /> <itemtype name="SSVCPresentationConfiguration” /> <itemtype name="UserMessage” /> <itemtype name="Value” /> <itemtype name="Workflow Map” /> <itemtype name="Workflow Map Path” /> </export> To help understand how to configure this file, the example above can be broken down line by line:
<languages list="en, de” /> These are the languages by Language Item code property defined in Aras Innovator. The above example shows en (English) and de (German).
<itemtype name="Field” /> Each ItemType defined in this file contains all of its multi-lingual string properties exported from the database.
<properties list="label,label_plural” /> If you want to select some, but not all multi-lingual string properties, add this tag with the properties to export.
Import Configuration
To import a language pack into the Aras Innovator database, you first need to define the Language Item in the database, refer to section 2.2.3 Defining a Language. Next, you need to setup the ImportConfig.xml.
<import> <itemtype name="Action” /> <itemtype name="Activity Template” /> <itemtype name="Activity Template Task” /> <itemtype name="CommandBarButton” /> <itemtype name="CommandBarDropDown” /> <itemtype name="CommandBarEdit” /> <itemtype name="CommandBarMenu” /> <itemtype name="CommandBarMenuButton” /> <itemtype name="CommandBarMenuCheckbox” /> <itemtype name="CommandBarMenuSeparator” /> <itemtype name="CommandBarSection” /> <itemtype name="CommandBarSeparator” /> <itemtype name="Field” /> <itemtype name="FileSelectorTemplate” /> <itemtype name="Filter Value” /> <itemtype name="Grid Column” /> <itemtype name="History Action” /> <itemtype name="ItemType” > <properties list="label,label_plural” /> </itemtype> <itemtype name="Life Cycle State” /> <itemtype name="PM_ProjectGridLayout” /> <itemtype name="Property” > <properties list="label,default_value” /> </itemtype> <itemtype name="RelationshipType” /> <itemtype name="Report” /> <itemtype name="SearchMode” /> <itemtype name="SecureMessageViewTemplate” /> <itemtype name="SelfServiceReportHelp” /> <itemtype name="SSVC_Preferences” /> <itemtype name="SSVCPresentationConfiguration” /> <itemtype name="UserMessage” /> <itemtype name="Value” /> <itemtype name="Workflow Map” /> <itemtype name="Workflow Map Path” /> </import> Each ItemType defined in this file should have a corresponding XML file containing the language values in the data folder.
The XML resources represent the static content of the Aras Innovator user interface, such as menu options and toolbar buttons. There is no automated tool for updating these resources. They must be done manually in a text editor.
For instance, in the \Innovator\Client\xml\item_menu.xml file
<?xml version="1.0" encoding="UTF-8"?> <menuapplet on_load="onItemMenuLoad” on_select="onClickItem” on_check="onCheckMenu” show="item_menubar"> <menubar id="item_menubar"> <menu id="file_menu” name="File"> Would become
<?xml version="1.0" encoding="UTF-8"?> <menuapplet on_load="onItemMenuLoad” on_select="onClickItem” on_check="onCheckMenu” show="item_menubar"> <menubar id="item_menubar"> <menu id="file_menu” name="Datei"> in the \Innovator\Client\xml.de\item_menu.xml file.
Aras Innovator houses all the generic user interface XML resources in the \Innovator\Client\xml folder. However, each solution could have its own xml resources as well. See section 2.2.5 Updating the User Interface (Xml-based resources).
The Resource.Config.xml located in \Innovator\Client\XML folder defines the language(s) that can be loaded on the Client. When you define the language pack, you need to update Resource.Config.xml file and add a reference to your language.
The following is an example of adding the German Language to the Resource.Config.xml:
<satelliteresources> ... <resource culture="neutral"/> <resource culture="ja"/> <resource culture="de"/> ... Once you have updated the Resource.Config.xml and saved it, you need to restart IIS on the Server.