This is a reposting of an article I originally wrote on my Developing for Dynamics GP blog.
Now that we understand how to write the Dexterity code to allow it to be easily translated and also work in a multi-lingual system. The next step is actually translating the strings and messages.
The actual process of translation is actually really simple. Make sure you have a backup of the Dexterity dictionary before you start. Below are the steps from a high level:
Download the Translation Tool, it is available as a sample application from both PartnerSource and CustomerSource. This sample application by Andrew Ingalls is an updated version of the original tool created Dave Gaboury and Tom Irsfeld.
Translation Tools – AITranslate.zip (156 KB) 6/19/2007
This download contains release Translation Tools. The zip file contains a translation instruction document, as well as a translation tool dictionary. The translation tools will work with release 10.0 of Microsoft Dexterity.
The AITranslate.zip file is also attached at the bottom of the article.
Load the Dexterity environment and open the AiTranslate.dic file.
Select Debug >> Test Mode or press Ctrl-T to enter Test Mode.
Select the dictionary that you want to translate. This can be your extracted dictionary that you create during the chunking process. That way you will not have to wade through all the Dynamics.dic core strings and messages.
Select the name for the Text File to contain the exported strings.
Make sure the Direction arrow is pointing to the right by clicking on it.
Click Transfer to complete the export.
This will produce a text file with contents along the lines of the example below:
Series Resource ID ValueSystem String 22000 Find …
System String 22001 Debugger
System String 22002 Find Next
System String 22003 Support Debugging Tool
System String 22004 Replace …
System RWString 22000 0 22001
System RWString 22001 DYNAMICS 22001
System RWString 22002 System Database 22001
System Error Message 22000 @PROD5261@
System Error Message 22001 About @PROD5261@
You will need to now translate all the strings. You can use find and replace, but need to be sure you don’t change the meaning of the strings. Also be sure to not damage the data in the first three columns, you must only change the strings themselves.
Note: There are some strings which should not be translated, for example the @PROD0@ or @PROD5261@ place holders which are automatically converted to the matching Product Name from the Dynamics.set launch file. This is covered in more detail in the AiTranslate.rtf document.
Once you have completed the changes and save the file, we can reverse the process to bring the strings back into the Dictionary.
Go back to the Translation Utility, make sure that Direction arrow is point to the left.
Re-enter the dictionary and text file paths, if required. They will still be there if you did not close the Translation Utility.
Click OK to overwrite resources.
If any errors occur, they will be logged in an errors.txt file.
Use the now translated extracted dictionary to create your translated chunk file.
For more detailed information on the process of translation, hints and tricks, see the AiTranslate.rtf file included with the AiTranslate.dic file in the archive.
Below is an example that was sent to me a while back showing Advanced Security in German:
The following Knowledge Base (KB) article is a great reference for the process of creating a chunk file:
Please post comments to let me know what your experiences are.
This article was originally posted on the Developing for Dynamics GP Blog and has been reposted on http://www.winthropdc.com/blog.