我有一个带有RDL文件的MS Report服务器,显示一个很好的英文报告。我有一个带有报表查看器的Web应用程序,可以在ASPX页面的旁边显示此报表。
我遇到的问题是我想用多种语言显示相同的报告?我该怎么办?
答案 0 :(得分:1)
1)将本地化文本存储在数据库中
2)在第二个数据集中选择文本的本地化版本。
3)设置一个参数供用户选择语言。
4)使用查找功能将文本包含在报告中。
如果您想将本地化系统应用于许多报告,则非常有用。
答案 1 :(得分:0)
1)将自定义函数添加到接受“Section_Name”和“Language”变量(例如“ReportName,French”)的自定义代码(Report Properties,Code)并返回本地化文本,例如:
function Localise(Section as String) as string
if Report.Parameters!Language.Value = 1 then
select Section
case "Report_Name"
Localise = "Report Name in English"
case "Report_Description"
Localise = "Report Description in English"
end select
elseif Report.Parameters!Language.Value = 2 then
select Section
case "Report_Name"
Localise = "Report Name in French"
case "Report_Description"
Localise = "Report Description in French"
end select
end if
end function
2)为用户添加一个参数以选择语言(在本例中使用整数作为值)
3)根据需要引用报告文本框中的代码,例如:
=code.localise("Report_Name")
通过单一报告实施和维护
非常快答案 2 :(得分:0)
为每种语言创建一个报告,并允许用户通过选择其他报告来选择语言。
这将是最快的实施,但可能难以维护报告。