In this blog, I will cover how the Translation Management Tool can be used to translate a SAP BusinessObjects Design Studio application/dashboards into multiple languages. In large organizations, it’s common for end users to be located in different countries and have different language backgrounds. The goal of the designer is to design a single application that can cater to the language needs of the diverse user base.
To highlight how this can be done, I’ve created very simple Design Studio application that contains a few components(Text Box, Radio Button Group, Button) and set their appropriate text and items properties.
The application also contains the TEXT_POOL component which can be used as a container to store text values that will be referenced dynamically in the application. I am using the TEXT_POOL to store a single text value. In my simple application when the button is clicked, the text property of the Button is changed from “Button” to “New Button”. The screenshots below show the entry in the TEXT_POOL component and the script for button’s On Click event to dynamically set the new text value.
Note: The TEXT_POOL component must be added to the application in order to use the Translation Management Tool to translate the application. This is true irrespective of whether you plan on dynamically setting any text values in your application. If you have no requirements to dynamically change text values in your app, simply add an empty TEXT_POOL component.
Note: The Design Studio application must be saved in the SAP BusinessObjects Business Intelligence Platform (SAP BI4.1 SP6+) in order for it to be available for translation in Translation Management Tool
Translation Management Tool
Once the application is created and saved to the BI4.1 SP6+ system, it is ready to be translated using the Translation Management Tool. The Translation Management Tool is part of the SAP Business Objects BI4 Client tools package.
Once the tool is launched, choose File >> Import strings to translate from >> System Repository.
Navigate to the folders structure where your Design Studio application is saved and click the Add button and click Finish.
If you see “Invalid filepath: localization.properties. (FWM 02081)” error during the import, this would indicate that your Design Studio application doesn’t have the TEXT_POOL component. See my note above.
If everything goes well, the tool will show the different text values from the applications that are available for translation. Notice that all text values for my Radio Button Group, Text box and Button are available for translation. In addition, the text values from my TEXT_POOL component, the name and description of my application are also available for translation. Time to practice your secondary language skills and start translating. Simply choose from the list of available languages and type in the translated strings. You may choose to translate to one or more languages to support the diverse user base in your organization. I chose to translate to German, but I don’t know German so I’ve simply added the suffix [DE] to the end of my string to indicate the translated values.
Save your translations back to the BI4 system by choosing “Export translated strings” from the File menu.
In BI Launchpad, the users can set their language preferences and the Design Studio application should now be displayed in their local language. To set the language preference, the user will need to change the Preferred Viewing Locale in BI Launchpad preferences. Since I’ve only translated my app to the German language, I’ve set my Preferred Viewing locale to German(Germany).
With the German locale set, when I view my Design Studio application in BI Launchpad, I see that all the text objects now show the German translation. If I click on the Button to dynamically change it’s text value, the new text value also shows the German translation.
The translated strings are saved as part of the InfoObject property of the Design Studio application in the CMS database. This can be validated by looking at the properties of the Design Studio application using Query Builder. The properties TRANSLATABLE_TEXT_STATE, TRANSLATABLE_TEXTS, and SI_TRANSLATION_STATE are populated to show that the app is translated to German language. If the app had been translated to additional languages, the properties would reflect that information.