Language translation in SSRS Reports
Hi,
I have a report developed for Both the users of India and France. So I need to display the reports in
two Languages i.e. in both English and French languages. I have a check box on top of my report where I can select any
one either English or France. So my report should show all the data in the report in either of the languages.
I have the databases in both the languages. Can anyone explain the total procedure for handling
this in SSRS.
Thanks in advance..!
Regards,
Balaji Prasad
Balaji - BI Developer
June 24th, 2011 12:17am
A fantastic subject,
You have many options,
1] the simpliest , Duplicate the report layout One French and English and toggle vuisibility dependant on the parameter selection.
2] next use two subreport each written in the required languages and select them dependant on the Parameter selection.
3] use A single report layout and use an IIF stament on each field that needs translating.
4] Use the T-sql to select only the language that you want to display. this is fine for data but you will need to change the headers with an IIF
5] If you are using SSRS 2008 R2 use the Lookup functions
6] Use a T-SQL dynamic pivot to twist the data around to the language of your choice the tricky bit here is to present a consistant column name to SSRS or it will fail this can either be a number whcich does not work well in
SSRS 2008R2 and but makes be-bugging difficult or present the column headers in english.
7] if you are using SSAS as a source then add the translations to the Cube
I'm sure there are other ways that I have not tried.
Hope this helps , Robert Edgson
Free Windows Admin Tool Kit Click here and download it now
June 24th, 2011 11:03am
Hi Balaji,
As Robert posted, there are so many ways to deal with a report display with multiple languages. In addition, you can try to create a report that allows the user to select a data source at run time. In order to achieve this, you must define an expression in
the report that returns a list of possible data sources. For more information, please refer to:
Data Connections, Data Sources, and Connection Strings (SSRS).
Thanks,
Bin Long
June 26th, 2011 10:39pm
Hi Robert,
Thanks a lot for your detailed description.
Hi Bin,
Thank u so much...!
cheers,
Balaji Prasad
Balaji - BI Developer
Free Windows Admin Tool Kit Click here and download it now
June 27th, 2011 12:11am
This is a weak area for SSRS
Options 1 and 2 described by Robert are significant compromises. Option 1 will require duplicate report maintenance, option 2 is potentially a performance problem as both subreports are likely to get run even thogh only one is being displayed (Not 100% certain
about this, it is certainly the case that the queries for hidden objects get run).
Option 4 is probably the most efficient and you can enhance it a bit by using a dynamic connection string to set the language that SQL is running under (pass Language=French on the connection string). This will allow you to use @@LANGUAGE in your queries
and will even ensure that SQL error messages are generated in the native language.
At iT-Workplace we are working on a custom assembly with translation functions that allow static text translation. This would allow you to store the translations in a database table so that they can be maintained and re-used across reports. This is
a refinement on Robert's Iif suggestion.
Andrew Wiles - www.it-workplace.com - MDX made simple
June 28th, 2011 11:07am