Multilanguage Report

  • Hi all,

    I need to show report in Multiple languages depends on Culture. that Report converting to PDF and showing in web application. I don't know how to do. Can anyone explain me in detail?

    thanks in advance

  • SSRS doesn't do multi-language reports, as such, out of the box.

    If it's data you're looking to translate, then you will need to ensure that the data the user is being shown is retrieved in that language. For example, if you data is in English, and you have a French User, SSRS won't be able to translate data that is returned with the value "Green" to "Vert". You'd have to have the user use a different data source where your data is stored in the correct language for them.

    If it's the labels on the report, this can be achieved my using an IIF statement. For example, in the example below the report checks the end users internet browser language to see if it is Japanese. If it is, then the label has the text in Japanese, otherwise english.

    =IIF(User!Language = "ja-JP", "????", "Sales")

    This would work for IE, but I'm not sure for other browsers. You could therefore have a parameter the user selects prior to the report running and change the above to check the parameter value appropriately.

    If you need to use a different datasource, you'll need to ensure that your datasets are still the same in both sources (different column names won't work). In the report data pane, right click your datasource, and select Data Source Properties. Select the Embedded Connection option and then the fx button. Use the IIF statement, like above, but instead provide the various connection string based on the language instead. If you need a starting connection string as your unsure how to write it, use the edit button to create your initial string, and then amend each of the return statements as needed.

    For example, you may end up with something like this:

    =IIF(Parameters!Language.Value = "French", "Data Source=SQLSERVER02;Initial Catalog=SalesFR", IIF(Parameters!Language.Value = "German", "Data Source=SQLSERVER02;Initial Catalog=SalesDE","Data Source=SQLSERVER02;Initial Catalog=SalesEN"))

    Hope that helps 🙂

    Thom~

    Excuse my typos and sometimes awful grammar. My fingers work faster than my brain does.
    Larnu.uk

  • thanks for reply,

    But using IIF we can do conditions for some languages.but we have so many languages in cluture.I have so many labels in my report,more over decimal points and number groups should consider from culture.based on culture info lables and amounts decimals should change.

    Can we achieve with this custom assemblies or =user!language global variable?

  • Can we achieve with this custom assemblies or =user!language global variable?

    There's a guide to Custom Assemblies for multi languages here[/url]. It's not a quick process, but might achieve what you're after.

    Thom~

    Excuse my typos and sometimes awful grammar. My fingers work faster than my brain does.
    Larnu.uk

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply