Support

Lorem ipsum dolor sit amet:

24h / 365days

We offer support for our customers

Mon - Fri 8:00am - 5:00pm (GMT +1)

Get in touch

Cybersteel Inc.
376-293 City Road, Suite 600
San Francisco, CA 94102

Have any questions?
+44 1234 567 890

Drop us a line
info@yourdomain.com

About us

Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec.

Translating ReportServer — I18N

ReportServer is available in numerous languages. However, if you like to add a new language, or improve one of the existing translations this document outlines the necessary steps.

Let’s start by looking at some of the core concepts of how different language versions of ReportServer are implemented. The first thing you need to know is that within ReportServer every text, label or message is assigned a unique key. You can view these keys by starting ReportServer using the special “keys”-language. To select this language append the locale=keys parameter to your ReportServer URL (e.g. http://127.0.0.1:8080/reportserver/ReportServer.html?locale=keys).

This replaces all labels with their respective keys, for example the OK button on the logon screen is now no longer labeled “OK” but has a caption of “ok::net.datenwerke.gxtdto.client.locale.BaseMessages” which is the logon buttons key. The key consists of two parts: The part before the “::” is the module specific key, the second part is the name of the module. The combination of both form the canonical version of the key, which is unique throughout ReportServer, the module specific key (“ok”) on the other hand might be used in different modules.

The translations into the different languages for these keys are stored in textfiles which are included in the .jar archive for ReportServer. So for the login OK button there is a file named BaseMessages.properties (in the folder net/datenwerke/gxtdto/client/locale). Actually, there is not just one file but one for each supported language, so the English version is stored in the BaseMessages_en.properties file, Portugese in BaseMessages_pt.properties and so on. The format of the properties files is simple: each line defines one key and assignes the value for the respective language. So BaseMessages_en.properties contains

helpLabel=Help
loadingMsg=Loading data
ok=OK
open=open
prev=Previous
progressMsg=Please wait...

On few occasions you might find a key with one or more parameters:

confirmDeleteManyMsg=Do you really want to delete {0} many objects?

The parameters go in curly brackets, the first parameter is {0}, the second is {1} and so on.

In theory that is all you need to know to edit ReportServer translations. But as you can imagine working with a huge number of text files and always moving them in and out of the archives isn’t much fun. So we created some tools that make the process much easier. The idea is that instead of having dozens of separate files we merge the translations for all modules and all languages into a single excel spreadsheet that has one key per row and shows all available translations side by side. The resulting file translation-template.xlsx is included in every ReportServer download and can be found in the resources directory.

To test your changes you can load the excel spreadsheet into ReportServer. To do so, open the terminal (Ctrl+Alt+T) and issue the command:

localization importMessages

This will look for the translation-template file in ReportServer's resources directory and read in the new translations. After you executed the command, reload your browser. You should now see the updated translations.

There are some drawbacks to this method, that are important to be aware of:

Translations loaded via this method are not permanent. That is, if you restart the server the default translations are loaded. To be honest this isn’t entirely accidental – we want to encourage you to share your translations with all users of ReportServer. So if you created a new language version, or improved an existing one, send us your excel spreadsheet and we will include it into the official build. If you send us translations please include a short statement, that you provide the translation under a creative commons zero (CC0 – http://creativecommons.org/publicdomain/zero/1.0/) license. There are some few labels, for which the translation does not show up when loaded via this method. It’s really just a few, but don’t be surprised, if that happens.

Zurück

InfoFabrik GmbH

Wir wollen, dass alle Unternehmen, Institutionen und Organisationen, die Daten auswerten, selbständig und zeitnah genau die Informationen erhalten, die sie für ein erfolgreiches Arbeiten benötigen.

InfoFabrik GmbH
Klingholzstr. 7
65189 Wiesbaden
Germany

+49 (0) 611 580 66 25

Kontaktieren Sie uns

Bitte rechnen Sie 9 plus 5.
Copyright 2007 - 2024 InfoFabrik GmbH. All Rights Reserved.

Auf unserer Website setzen wir Cookies und andere Technologien ein. Während einige davon essenziell sind, dienen andere dazu, die Website zu verbessern und den Erfolg unserer Kampagnen zu bewerten. Bei der Nutzung unserer Website werden Daten verarbeitet, um Anzeigen und Inhalte zu messen. Weitere Informationen dazu finden Sie in unserer Datenschutzerklärung. Sie haben jederzeit die Möglichkeit, Ihre Einstellungen anzupassen oder zu widerrufen.

Datenschutzerklärung Impressum
You are using an outdated browser. The website may not be displayed correctly. Close