Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I need some assistance in QV involving language translations. I work for a global company and we have an app that uses a Customer Dictionary and a selectable language value in the app to translate titles in the application between German, English, French and Italian so our sales people in those regions can read the data in their native language. The new request was to have this selection also translate the data loaded from the tables. In the load script the language for the loaded data is defined by a variable VLanguage but at this time is locked to only load German ‘D’ vLanguage = ‘D’ example of a load statement is WHERE TVV1T.SPRAS = '$(vLanguage)'.
My question is, if I remove the limits and load the data for the other languages needed is there a way to use the VLanguage variable to then select the language displayed? Im not sure how to implement the variable in all of the associated tables that need translating (all have a field the selects the language and use the same single letters to choose). Any guidance appreciated.
Have a look at this post:
https://community.qlik.com/t5/Qlik-Design-Blog/Making-a-Multilingual-Qlik-Sense-App/ba-p/1678131
And this technical brief:
We have done what that article and discussion post basically are doing. We have the translations working for the Charts and the titles in them in the application.
and we have a spreadsheet that does the translation and generate the code for the set analysis
but as you can see in the first image the data that is loaded is not translated by this. The data (which comes from SAP) has a language key in each of the tables (D,E,F, and I) that we need to select to display the data in the correct language.
The technical discussion you sent is close to what is needed. But we have multiple tables that need this translation with hundreds of columns of data that make adding it all (and maintaining it) in an Excel sheet.
It shouldn't matter if your source is Excel or a database, as the same logic would apply, as per the brief - you set up a variable for picking out the language, and then reference it in the Aggr() (for dimensions) or within the relevant additional formulas (for expressions).
I do agree that over a large app this will be somewhat of a nightmare, but I'm not sure I see an alternative unless you can join all your language fields and use a standard list box to narrow down the data (which I doubt is feasible). I suppose you could set up a trigger that individually selects the language field of every single table when a main language selector (unlinked field or based on a variable) is selected? I wouldn't really recommend this approach because using selections in this manner can cause unexpected interactions with other selections and generally having this many selections (on a trigger or otherwise) is not ideal, but it's something you could look at I suppose.