Dynamics Mobile studio provides tools to the developer to easily translate the module to multiple languages without changing the existing logic.

The translation tools and the Dynamics Mobile customization layers feature allows the developer to localize easily the mobile modules.

The developer can access the translation tools from the Translation link from Dynamics Mobile Studio on the left.

It will display the list of the available languages in the module. Each language contains a list of translated strings. The list displays:

  • LangId: unique identifier of the language – Any string value can be used, but it is recommended to use more universal language identifiers like these: http://www.loc.gov/standards/iso639-2/php/code_list.php
  • Title: Descriptive title of the language – The title must be meaningful for the developer

The developer can perform the following actions:

  • Clicking over the New Language button to add new language
  • Checking the checkbox next to the language and clicking the Delete button on top to delete the module
  • Opening the language for editing by clicking over the language LandId

Adding new translation language

The developer can add a language by clicking over the Add button on top and entering the LangId and the Title of the language. The language can be saved by clicking the Save button. The developer has to click over the new language LangId from the list to open it for modification. It will navigate to the Language editor page.

The developer will see the list of the translated strings for this language. The list displays the following columns:

  • Name: The unique internal identifier of the translated string. The identifier is used across the module instead of the actual text.
  • Translation: The translation of the string in the current language.

The developer can perform the following tasks:

  • Opening the language properties window by clicking the [pencil] icon on top. It will allow the developer to change the LangId and the Title of the language
  • Duplicating the language(including the translated strings) by clicking the [duplicate] icon on top
  • Automatically copy already translated strings from another language by selecting a source language from the dropdown list on top and clicking the [import] icon on top
  • Adding a new translation string by clicking the “Add string” button on top and entering the Name and the Translation for the new string
  • Editing existing string by clicking the [pencil] icon next to the translated string
  • Deleting existing translation by clicking the [X] icon next to the translated string

Translating modules

The developer can use the translation features in the following way – instead of using strings across the module’s components, the developer can use well-defined string identifiers. These identifiers then must be translated into every language, which will be supported by the module.

Le’ts assume that we have an English string “Do you want to delete this record?”.

We want to translate the string to English and Spanish.

First , we will create new view and will write the following code to show a message asking the user.

if($ma.uiManager.confirm("Do you want to delete this record?")){
//... delete the record
}

Of course using directly the fill text into the code will prevent us from translating the module. Let’s decide that we will give this text unique identifier called msgDelRecordQuestion.

We can rewrite our code in this way then:

if($ma.uiManager.confirm("{#msgDelRecordQuestion#}")){
//... delete the record
}

Note that we are still passing a string parameter to the confirm method. The string parameter contains our identifier surrounded with {# #} strings.

Now, lets create a new language:

LangId = en
Title = English

Let’s open the language translation editor by clicking over the LangId and add new string:

Name = msgDelRecordQuestion
Translation = Do you want to delete this record?

We can then create a new language:

LangId = sp
Title = Spanish

and opening the language translation editor by clicking over the LangId and add new string:

Name = msgDelRecordQuestion
Translation = Quieres eliminar este registro?

Now we have the code in place and also the string translated in both Spanish and English. We can now setup for each device role the language, which will be used by the devices within the role. So we should navigate to the Roles List, finding the device role of interest, opening the Role’s Settings tab and adding the following setting:

language=sp

It will force the devices to work in Spanish language, so the users within this role will see the Quieres eliminar este registro? question popping on their screens.

Note that the language role setting requires you to provide existing LangId. If you provide wrong LandId, the translation will not happen and the user will receive the {#msgDelRecordQuestion#} question on the screen.

We can also provide the following role setting:

language=en

for another device role to force the devices to work with the English translations.

The translation string identifiers can be used in the following places in Dynamics Mobile Studio:

  • in the both the view’s code behind and the Code files
  • in the view layout when specifying button captions, texts and others
  • in the tasks/steps titles

Always wrap the string identifier with {# #}.

Last Updated: Dec 1, 2015

We provide public releases of our products once a year or more and commit to 12 months support for all public releases. We also provide releases to support the new versions of Microsoft Dynamics NAV and Microsoft Dynamics AX within 12 months after a new version of the ERP is released.

We envision the support as a major component of our effort to provide our customers with mission critical software solutions. We provide support services to customers in order to guarantee their business continuity. Our customer shall report issues or other cases, which requires support. The reporting is performed by authorized personnel from the Customer’s side via the standard support channels described below.

The support is provided in order to:

  • Solve current problems reported by authorized representatives of the Customer on occasion and in connection with Dynamics Mobile
  • Diagnose problems in connection with the standard system functionality
  • Diagnose problems in connection with the functionality customized by Dynamics Mobile team
  • Analyze and eliminate of any “defect” – a mistake in the program code of functionality, whcih affects the Client’s operations

The support services are only provided in response to a support request submitted by authorized personnel from the Customer’s side via any of the support channels:

  • -e-mail: support@dynamcsmobile.com
  • -phone: 00359 2 817 33 63

We provide different response times to support requests based on the request priority as follows:

Priority Reaction time Description
Critical to 2 hour Causes business process block.
Medium up to 8 hours Affects the business process as there are no work around actions.
Low up to 2 business days Low impact issues and requests, which does not affect the system.