Saturday, February 25, 2012

different languages

We have customers in different countries. And we have to provide the report
services in different languages. I mean, the interface including the
parameters must be in the language of the customer.
Does anyone has an idea how to?You have to design the table on which you are basing your report so that it
has one row for each language you want to support. Each row should have a
language identifier that indicates the language of the data in that row.
There are standard two character language identifiers: EN for English, FR for
French, DE for German, etc. The example table of animals shows such a table:
AnimalID LanguageID Animal
-- -- --
1 EN Dog
1 FR le chien
1 DE der hund
2 EN cat
2 FR le chat
2 DE die katze
.
.
The dataset query on which you base your report should automatically read
the correct row from this table. To do this, make use of the variable
User!Language which automatically reads the user's language.
There are two says to do this:
1. Either use a dynamic query (Reporting Services accepts an expression as a
dataset query):
="SELECT * FROM Animals WHERE LanguageID = ' " & LEFT(User!Language, 2) & "
' "
2. or use a parameter query:
SELECT * FROM Animals WHERE LanguageID = @.languageID
then use a report parameter with a default of LEFT(User!Language, 2) to
supply a value to the query parameter.
Either way, when a user opens the report from their browser, the report will
automatically display in the correct language as defined in their Control
Panel Regional Settings.
HTH
Charles Kangai, MCT, MCDBA
"Soan" wrote:
> We have customers in different countries. And we have to provide the report
> services in different languages. I mean, the interface including the
> parameters must be in the language of the customer.
> Does anyone has an idea how to?
>|||Thanks for the help
I have the dataset with the values in the language that i need. I mean
for EN:
AnimalID LanguageID Animal
-- -- --
1 EN Dog
2 EN cat
for DE:
AnimalID LanguageID Animal
-- -- --
1 DE der hund
2 DE die katze
for FR: AnimalID LanguageID Animal
-- -- --
1 FR le chien
2 FR le chat
i can use them in the report Body,
i can also use them as default value for the parameters,
but now how can i use them in the Promt value of the parameter'
"Charles Kangai" wrote:
> You have to design the table on which you are basing your report so that it
> has one row for each language you want to support. Each row should have a
> language identifier that indicates the language of the data in that row.
> There are standard two character language identifiers: EN for English, FR for
> French, DE for German, etc. The example table of animals shows such a table:
> AnimalID LanguageID Animal
> -- -- --
> 1 EN Dog
> 1 FR le chien
> 1 DE der hund
> 2 EN cat
> 2 FR le chat
> 2 DE die katze
> .
> .
> The dataset query on which you base your report should automatically read
> the correct row from this table. To do this, make use of the variable
> User!Language which automatically reads the user's language.
> There are two says to do this:
> 1. Either use a dynamic query (Reporting Services accepts an expression as a
> dataset query):
> ="SELECT * FROM Animals WHERE LanguageID = ' " & LEFT(User!Language, 2) & "
> ' "
> 2. or use a parameter query:
> SELECT * FROM Animals WHERE LanguageID = @.languageID
> then use a report parameter with a default of LEFT(User!Language, 2) to
> supply a value to the query parameter.
> Either way, when a user opens the report from their browser, the report will
> automatically display in the correct language as defined in their Control
> Panel Regional Settings.
> HTH
> Charles Kangai, MCT, MCDBA
> "Soan" wrote:
> > We have customers in different countries. And we have to provide the report
> > services in different languages. I mean, the interface including the
> > parameters must be in the language of the customer.
> >
> > Does anyone has an idea how to?
> >|||You have two options, either to prompt the user or not to prompt the user. If
you choose not to prompt the user but have RS read the user's language from
the browser, use a report parameter default of =left(User!Language, 2) in
Report Designer. Otherwise give the user a picklist of languages and
configure one of them as a default in Report Manager (go to the report
properties and click on the Parameters link). It is straightforward to
implement - I have one working using the AdventureWorks2000
ProductModelDescription table.
HTH
Charles Kangai, MCT, MCDBA
"Soan" wrote:
> Thanks for the help
> I have the dataset with the values in the language that i need. I mean
> for EN:
> AnimalID LanguageID Animal
> -- -- --
> 1 EN Dog
> 2 EN cat
> for DE:
> AnimalID LanguageID Animal
> -- -- --
> 1 DE der hund
> 2 DE die katze
> for FR: AnimalID LanguageID Animal
> -- -- --
> 1 FR le chien
> 2 FR le chat
> i can use them in the report Body,
> i can also use them as default value for the parameters,
> but now how can i use them in the Promt value of the parameter'
> "Charles Kangai" wrote:
> > You have to design the table on which you are basing your report so that it
> > has one row for each language you want to support. Each row should have a
> > language identifier that indicates the language of the data in that row.
> > There are standard two character language identifiers: EN for English, FR for
> > French, DE for German, etc. The example table of animals shows such a table:
> >
> > AnimalID LanguageID Animal
> > -- -- --
> > 1 EN Dog
> > 1 FR le chien
> > 1 DE der hund
> > 2 EN cat
> > 2 FR le chat
> > 2 DE die katze
> > .
> > .
> >
> > The dataset query on which you base your report should automatically read
> > the correct row from this table. To do this, make use of the variable
> > User!Language which automatically reads the user's language.
> >
> > There are two says to do this:
> > 1. Either use a dynamic query (Reporting Services accepts an expression as a
> > dataset query):
> > ="SELECT * FROM Animals WHERE LanguageID = ' " & LEFT(User!Language, 2) & "
> > ' "
> > 2. or use a parameter query:
> > SELECT * FROM Animals WHERE LanguageID = @.languageID
> > then use a report parameter with a default of LEFT(User!Language, 2) to
> > supply a value to the query parameter.
> >
> > Either way, when a user opens the report from their browser, the report will
> > automatically display in the correct language as defined in their Control
> > Panel Regional Settings.
> >
> > HTH
> >
> > Charles Kangai, MCT, MCDBA
> >
> > "Soan" wrote:
> >
> > > We have customers in different countries. And we have to provide the report
> > > services in different languages. I mean, the interface including the
> > > parameters must be in the language of the customer.
> > >
> > > Does anyone has an idea how to?
> > >|||I mean, how can set the parameter name:
Language:
Sprache:
In such a way, that the user can understand what is all about, what
information is requested.
"Charles Kangai" wrote:
> You have two options, either to prompt the user or not to prompt the user. If
> you choose not to prompt the user but have RS read the user's language from
> the browser, use a report parameter default of =left(User!Language, 2) in
> Report Designer. Otherwise give the user a picklist of languages and
> configure one of them as a default in Report Manager (go to the report
> properties and click on the Parameters link). It is straightforward to
> implement - I have one working using the AdventureWorks2000
> ProductModelDescription table.
> HTH
> Charles Kangai, MCT, MCDBA
> "Soan" wrote:
> > Thanks for the help
> >
> > I have the dataset with the values in the language that i need. I mean
> >
> > for EN:
> > AnimalID LanguageID Animal
> > -- -- --
> > 1 EN Dog
> > 2 EN cat
> > for DE:
> > AnimalID LanguageID Animal
> > -- -- --
> > 1 DE der hund
> > 2 DE die katze
> > for FR: AnimalID LanguageID Animal
> > -- -- --
> > 1 FR le chien
> > 2 FR le chat
> >
> > i can use them in the report Body,
> > i can also use them as default value for the parameters,
> > but now how can i use them in the Promt value of the parameter'
> >
> > "Charles Kangai" wrote:
> >
> > > You have to design the table on which you are basing your report so that it
> > > has one row for each language you want to support. Each row should have a
> > > language identifier that indicates the language of the data in that row.
> > > There are standard two character language identifiers: EN for English, FR for
> > > French, DE for German, etc. The example table of animals shows such a table:
> > >
> > > AnimalID LanguageID Animal
> > > -- -- --
> > > 1 EN Dog
> > > 1 FR le chien
> > > 1 DE der hund
> > > 2 EN cat
> > > 2 FR le chat
> > > 2 DE die katze
> > > .
> > > .
> > >
> > > The dataset query on which you base your report should automatically read
> > > the correct row from this table. To do this, make use of the variable
> > > User!Language which automatically reads the user's language.
> > >
> > > There are two says to do this:
> > > 1. Either use a dynamic query (Reporting Services accepts an expression as a
> > > dataset query):
> > > ="SELECT * FROM Animals WHERE LanguageID = ' " & LEFT(User!Language, 2) & "
> > > ' "
> > > 2. or use a parameter query:
> > > SELECT * FROM Animals WHERE LanguageID = @.languageID
> > > then use a report parameter with a default of LEFT(User!Language, 2) to
> > > supply a value to the query parameter.
> > >
> > > Either way, when a user opens the report from their browser, the report will
> > > automatically display in the correct language as defined in their Control
> > > Panel Regional Settings.
> > >
> > > HTH
> > >
> > > Charles Kangai, MCT, MCDBA
> > >
> > > "Soan" wrote:
> > >
> > > > We have customers in different countries. And we have to provide the report
> > > > services in different languages. I mean, the interface including the
> > > > parameters must be in the language of the customer.
> > > >
> > > > Does anyone has an idea how to?
> > > >|||I doubt whether you can do it like that. What about just making your prompt
read:
Language/Sprache:
Charles Kangai, MCT, MCDBA
"Soan" wrote:
> I mean, how can set the parameter name:
> Language:
> Sprache:
> In such a way, that the user can understand what is all about, what
> information is requested.
>
> "Charles Kangai" wrote:
> > You have two options, either to prompt the user or not to prompt the user. If
> > you choose not to prompt the user but have RS read the user's language from
> > the browser, use a report parameter default of =left(User!Language, 2) in
> > Report Designer. Otherwise give the user a picklist of languages and
> > configure one of them as a default in Report Manager (go to the report
> > properties and click on the Parameters link). It is straightforward to
> > implement - I have one working using the AdventureWorks2000
> > ProductModelDescription table.
> >
> > HTH
> >
> > Charles Kangai, MCT, MCDBA
> >
> > "Soan" wrote:
> >
> > > Thanks for the help
> > >
> > > I have the dataset with the values in the language that i need. I mean
> > >
> > > for EN:
> > > AnimalID LanguageID Animal
> > > -- -- --
> > > 1 EN Dog
> > > 2 EN cat
> > > for DE:
> > > AnimalID LanguageID Animal
> > > -- -- --
> > > 1 DE der hund
> > > 2 DE die katze
> > > for FR: AnimalID LanguageID Animal
> > > -- -- --
> > > 1 FR le chien
> > > 2 FR le chat
> > >
> > > i can use them in the report Body,
> > > i can also use them as default value for the parameters,
> > > but now how can i use them in the Promt value of the parameter'
> > >
> > > "Charles Kangai" wrote:
> > >
> > > > You have to design the table on which you are basing your report so that it
> > > > has one row for each language you want to support. Each row should have a
> > > > language identifier that indicates the language of the data in that row.
> > > > There are standard two character language identifiers: EN for English, FR for
> > > > French, DE for German, etc. The example table of animals shows such a table:
> > > >
> > > > AnimalID LanguageID Animal
> > > > -- -- --
> > > > 1 EN Dog
> > > > 1 FR le chien
> > > > 1 DE der hund
> > > > 2 EN cat
> > > > 2 FR le chat
> > > > 2 DE die katze
> > > > .
> > > > .
> > > >
> > > > The dataset query on which you base your report should automatically read
> > > > the correct row from this table. To do this, make use of the variable
> > > > User!Language which automatically reads the user's language.
> > > >
> > > > There are two says to do this:
> > > > 1. Either use a dynamic query (Reporting Services accepts an expression as a
> > > > dataset query):
> > > > ="SELECT * FROM Animals WHERE LanguageID = ' " & LEFT(User!Language, 2) & "
> > > > ' "
> > > > 2. or use a parameter query:
> > > > SELECT * FROM Animals WHERE LanguageID = @.languageID
> > > > then use a report parameter with a default of LEFT(User!Language, 2) to
> > > > supply a value to the query parameter.
> > > >
> > > > Either way, when a user opens the report from their browser, the report will
> > > > automatically display in the correct language as defined in their Control
> > > > Panel Regional Settings.
> > > >
> > > > HTH
> > > >
> > > > Charles Kangai, MCT, MCDBA
> > > >
> > > > "Soan" wrote:
> > > >
> > > > > We have customers in different countries. And we have to provide the report
> > > > > services in different languages. I mean, the interface including the
> > > > > parameters must be in the language of the customer.
> > > > >
> > > > > Does anyone has an idea how to?
> > > > >

No comments:

Post a Comment