Multi-Lingual Reports

Hi eDNA Forum:

I’m expecting to have to deliver some multi-lingual reports in the near future, and am interested in the experiences of others as I prototype possible solutions. As most of my consulting is to the Canadian government, just about everything needs to be in both English and French. I’ve done this many times before fully successfully using SSRS reports, but have only had success in Power BI with a lot of expended effort.

My goal is to use one report design, with two separate instances, one each for EN and FR. One option is to:

  • Retrieve all dimension values in both EN and FR text
  • Add and retrieve a database table/view to hold all translations (e.g., report titles, subtitles, visual titles, etc.)
  • Add a hidden Language slicer with 2 values, EN and FR; select the language to display complete with a harvesting measure

Selected Language Code = SELECTEDVALUE( Languages[Language Code] )

  • Add new measures for each title and each fact table column to return the appropriate dimension text column based on language selection

e.g., for Country, use a measure like

Country = 
SWITCH( TRUE(),
    [Selected Language Code] = "EN", MAXX( Transactions, RELATED( Countries[Country EN] ) ), 
    [Selected Language Code] = "FR", MAXX( Transactions, RELATED( Countries[Country FR] ) ), 
    [Selected Language Code] = "ES", MAXX( Transactions, RELATED( Countries[Country ES] ) ), 
    BLANK()
)
  • Build visuals using the new measures, using the measures as-is on the EN page and using the measures again on the FR page, but this time manually edit the display name in the field well of the visual
  • If tables or matrices, edit the display names manually in the Fields well to suit the display language

I’ve created a small sample Excel dataset with English, French, and Spanish placeholder dimension values along with a three-page PBIX as a test bed. (I left the language slicer visible for our discussion, but it would be hidden before release.)

As for deployment, I can see two options:

  • deploy once, and let the user choose the desired page
  • deploy twice, each time hiding the page(s) for the un-desired language, then edit the report name to suit in the service

Thoughts? Please rip it apart; I always find that discussion is more vigorous when the test case is wrong, so …

Thanks in advance for your time.

Greg
Translations.xlsx (29.4 KB)
eDNA Forum - Translations v2.pbix (152.8 KB)

My vote (and no, I have not created such a report, so this is just me thinking) is that it would be preferable to deploy once, user can select the page they want, and bookmark it.

This allows bilingual users to need only one version of the report, which can be used in either language depending on how they choose to see it (or which language is needed for the meeting).

Quite honestly, I would probably have a single page, and use the slicer to let the user change the language - but I understand that’s not always the solution depending on your requirements.

1 Like

@Greg,

This is not a topic I know anything about, but in the course of trying to educate myself a little, I came across the following links which I wanted to forward to you in case you haven’t seen some of these yet. Some of the techniques are currently premium only, but with the expectation that they would (hopefully) soon migrate to Pro.

I hope this is at least somewhat helpful. Good luck with this.

  • Brian

Thanks @BrianJ. I’ll review more tomorrow, but for my current client I can’t even get them to approve use of DAX Studio, so don’t hold out hope for a viable TE solution. I’m looking at pure DAX or M for now, unfortunately.
Greg

Adding to the thread and marking it as “solved” so it won’t appear in the “unsolved” posts anymore. I’ll update the thread if and when a solution is found.
Greg