Hello NAV enthousiasts!
We are in the process of making our solution ready for deployment in other languages than german. Hence the ML-captions throughout the application must be ENU and DEU. I want to check for inconsistencies concerning the MultiLanguage captions throughout the application.
Is there some tooling available to check if all fields have ENU as well as DEU captions? That would save me a lot of time!
Regards,
Greys
0
Comments
-Mohana
http://mohana-dynamicsnav.blogspot.in/
https://www.facebook.com/MohanaDynamicsNav
In the olden days when moving to Navision Solutions (i.e. v3.0) a simple command line tool was available which exactly did what you are looking for. Unfortunately this 32 bits exe is not running any longer on Windows since we left XP. I mention this one also in the post I refer to above.
Follow this link to my blog to see more on posts translations.
Never stop learning
Van Vugt's dynamiXs
Dutch Dynamics Community
https://msdn.microsoft.com/en-us/library/dn762388%28v=nav.80%29.aspx
If you want to use that, make sure that only the cmdlets supplied with NAV 2015 Cumulative Update 2 or higher are employed, the initial versions had some bugs.
It looks like it shows the Object Type, Object ID, LCID and the TranslateLine... which is something like "R123456-Q1102112541-P54215P-A2055"
And now what? How am I supposed to know where the missing caption actually is in that report?
https://msdn.microsoft.com/en-us/library/dd301161(v=nav.90).aspx
R = Report
Q = TextConstant
but there is no "R123456-Q1102112541-P54215P-A1033" (or whatever language ID you are using)
The NAV translation "tool" was designed for specific process
1. Export current language (usually EN-US, LangID 1033)
2. Translate EVERYTING in the text file, replace LangID with new lang id
3. Import translated language file
There was no sophistication assumed, finding/translating only missing etc.
The file structure as you've probably notices is not realy suitable for easy processing in Excel
I am personally using another trick. I am exporting objects into a text file, loading text definition into Notepad++ and then marking all the lines where CaptionML (or OptionCaptionML) looks like *CaptionML=E*
That marks for me all the lines where the caption has only one language. Then I can manually update the object text file and import it back
This is still tedious manual work. But I guess when it comes to translation no matter what tool you use it always ends up at someone manually doing the translation
Slawek
Dynamics NAV, MS SQL Server, Wherescape RED;
PRINCE2 Practitioner - License GR657010572SG
GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-03
Import-Module 'C:\Program Files\Microsoft Dynamics NAV\100\Service\NavAdminTool.ps1'
Import-Module 'C:\Program Files (x86)\Microsoft Dynamics NAV\100\RoleTailored Client\Microsoft.Dynamics.Nav.Model.Tools.psd1' #-WarningAction SilentlyContinue
Import-Module 'C:\Program Files (x86)\Microsoft Dynamics NAV\100\RoleTailored Client\Microsoft.Dynamics.Nav.Apps.Tools.psd1' #-WarningAction SilentlyContinue
$File = 'D:\Merge\forms.txt'
$Result = Test-NAVApplicationObjectLanguage –Source $File -LanguageId ENU,NLD -PassThru
write-host '# T=Tabel, N=Page, R=Report, X=XMLPort'
write-host '# C=Control, Q=Textcontstant, G=Page Action, N=RequestPage, T=Label, F=Field, D=DataItem'
write-host '# 1033=ENU, 1043=NLD'
ForEach ($Line in $Result){
#write-host
$C = ($Line.TranslateLines) -split ':'
foreach ($L in $C){
write-host $L
}
}
Am I missing something?