Translation of SAP Analytics cloud content in multiple language
Customers want to localize their SAC content into multiple language to make them available to their users in their preferred languages. SAC support translation of Story, analytic application, model, and public dimension.
General lifecycle of the story which needs to undergo translation
Bulk Translation using translation tool
Bigger organizations already have some translation tool in house, and they should be able to leverage the translation tool to perform bulk translation in multiple languages and for them we support XLF approach. Here user can download the Xlf file in the source language provide this to the translation tool and get it translated into multiple language. Post which these translated files could be uploaded in the SAC.
Manual translation and review translated content
Organization whose requirement is to have translation of minimal text or would like to review the translated texts but don’t want to get into the XLF approach but rather translate the texts manually, for them SAC provides translation edit panel using which user can translate the texts in different languages manually.
Tenant admin needs to activated translation feature for a tenant in the system administration section of SAC.
To access the Translation dashboard, user must be assigned the role which has translation privilege, by default this is available under role BI Admin and translator, however user can also create custom roles and include this privilege in it. once user has this privilege, they will be able to see translation dashboard and all the content which must undergo translation
Once the translation feature is enabled and user has translation privilege, they can see translation dashboard
In this blog, let’s take an example of story translation workflow
Consider story has been created and is ready for consumption and goes for the translation.
Enabling a Story for Translation
Go to story detail and mark story for translation
When user enable a story for translation, the story source language is set, and this is same as the user’s data access language who has enabled for translation. In below example user data access language under profile was English (United States) so the source language is set to same
Once story is marked for translation it will be available in the translation dashboard and the status would be not translated
Select story and export to xlf, this will export all the texts which needs to undergo translation in the *.xif file.
Source file will be downloaded with the name of the story.xlf
if you open .xlf file you will see the strings inside it. this will also contain the source language of the strings.
Points to note:
- You can see there are HTML tags associated with the text, this is there as we had some formatting in the story chart title text and so the html tags are due to the formatting with those text.
- You can also see there are some texts duplicated this is due to the factor that in case of chart titles there are two texts associated, one of then is used for display of actual text and other one is used for hover texts.
- we can provide this xlf file to the translation tool and get the translated target files in the different language
translate the xlf file to target language using any translation tool (ensure the translation tool support HTML tags) in this example i have translated into Deutsch and French. you can see the name of the file have language code.
Upload this translated xlf file in the translation dashboard
- Select the story
- Click on import
- Click on upload and select the translated file
- Click import
Post upload of the xlf file the status changes to the translated
Click on the translated storing and you can see the status of individual language
You can further review the translated text in the translation edit panel within the translation dashboard. Select the story and click on the edit
Select the target language you want to review and then if the need be you can modify the text based on the business needs.
This translation panel would also be used for manual translation. If the translator does not want to go for translation using Xlf way and would be comfortable in manual entering the text in the target language, then they can use this translation edit panel.
Consider, user has done translation in Deutsch and French using Xlf but now for Español (España) they want to do manual, then this can be used
Here again you can see there are HTML tags and those are available due to the reason that these texts contain the formatting. For the story page name or the story name there is no HTML tags as these texts cannot be formatted.
Note: HTML tag in the source and the target should not mismatch else it will throw error.
Viewing story in preferred language
When user open the story and if the story translation is available in the data access language of the user, then they can visualize the story in their respective data access language however of the translation is not available in that language then it will fallback to the source language and story will open in the source language
Data access language can be set in the profile setting of the user
User data access Language is set to French, the story will display the French text
User with French data access language open the story and then they can see the story in the French.
if the story was viewed by user in non translated language then it will fallback to source language (in this example it is English (United States))
Point to remember
- Some of the text will appear twice, for example the chart title, this is because one of the texts is for the chart title text and the other one is for hover chart title text
- HTML tags must match in the source and the target else it will throw error
- Story will be allowed to edit only in the source language
- Post translation if any of the the story text is edited then the translation of the edited text will be deleted and it has to undergo translation.
Thank you for this valuable blog. We're aware of this Translation option and trying to use for our roll out projects but it seems it still has flaws.
What you're referring is solely for translating each object in the story, model, dimension etc that are visible to the users. However metadata of public dimensions (descriptions of dimension members) can not be translated in this procedure.
We tried to maintain dimension member's descriptions with different languages via changing user language preferences each time, but it seems SAC's metadata repository doesn't store descriptions with language option.
We also created a ticket for this issue and below are the screenshots referring our problem. First one is original language whereas the second one is the English. Whatever we tried, we couldn't change the descriptions of the members in red rectangle areas on left.
Do you have any suggestions, work around solutions or road map considerations?
Original Language (Turkish)
Translated Language (English)
It seems that this functionality will be delivered in Q3.2022.
Multi Language Member Description