on 06-27-2010 5:27 PM
Hi All,
How make an addon which support Multi language
Hi,
There are many ways you can implement a multilingual addon.
My approach is to:
1. I use a property to store the addon's language code (I've setup my system to perceive en-US and en-UK as the same language.
2. I have a XML file with the translations. Here's a sample of this file...
<?xml version="1.0" encoding="utf-16" ?>
<AddOnStrings>
<Addon>
<Name
PT="ebmpapst"
EN="ebmpapst"></Name>
</Addon>
<general>
<FileNotFound
PT="O ficheiro não foi encontrado"
EN="File not found"></FileNotFound>
<AppReady
PT="Aplicação carregada e pronta a utilizar."
EN="Application loaded and ready for use."></AppReady>
<ConnSucess
PT="Ligação estabelecida à empresa "
EN="Connection established to company "></ConnSucess>
</general>
...
<column>
<COLItemCode
PT="Cód. Artigo"
EN="Item Code"></COLItemCode>
<COLItemName
PT="Descrição do Artigo"
EN="Item Name"></COLItemName>
<COLTotal
PT="Total"
EN="Total"></COLTotal>
</column>
<queries>
</queries>
</AddOnStrings>
3. I have a function that get the translation. Here's the code:
Public Function TranslateStr(ByRef oApplication As SAPbouiCOM.Application, ByRef StringID As String) As String
TranslateStr = ""
Dim oXMLDoc As System.Xml.XmlDocument = New Xml.XmlDocument
Try
If File.Exists(SEI_FldMisc & "strings.xml") Then '## SEI_FldMisc hold the path to the strings.xml file
oXMLDoc.Load(SEI_FldMisc & "strings.xml")
TranslateStr = oXMLDoc.SelectSingleNode("AddOnStrings/" & StringID & "/@" & SEI_Language).Value '## SEI_Language holds the language code
End If
Catch ex As Exception
oApplication.MessageBox("TranslateStr(" & StringID & "): " & ex.ToString)
Finally
oXMLDoc = Nothing
End Try
End Function
Hope it helps,
Edited by: Manish Meshram on Jun 27, 2010 7:04 PM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
91 | |
7 | |
7 | |
4 | |
3 | |
3 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.