在Visual Studio 2010中,我有一个饼图,在点击图表时,使用“转到URL”操作来显示报告。
如果服务器名称是硬编码的,这意味着无论我在哪个环境(即在测试服务器上,链接仍然是实时报告),我都会显示相同的报告。
我想使用一个参数但是,尽管有大量的谷歌搜索,但我无处可去。
例如,我修改了Go to URL,所以它的开头如下: =“javascript:void(window.open('http://”& Parameters!MyServerName.Value&“。
我添加了一个报告参数@MyServerName,其中available values = none和default values = = MID(全局ReportServerUrl,8,INSTR(全局ReportServerUrl, “/”)! - 8)
但是,在预览中我得到错误“reprt参数'ServerName'的DefaultValue表达式包含错误:参数'Length'必须大于或等于零。”
如果有人能够纠正这个或提供更好的方式我将非常感激!
我也尝试使用= @@ servername作为默认值,但错误“[BC30201]预期表达式。”
我也可以使用Go To Report,但它并没有给我控制javascript的功能。
答案 0 :(得分:0)
请尝试以下方法:
使用以下表达式创建报表变量(报表属性... - >变量),而不是使用参数:
=Iif(String.IsNullOrEmpty(Globals!ReportServerUrl), "default_server_name", Replace(Globals!ReportServerUrl, "http://", "")).Split("/").GetValue(0)
将default_server_name替换为您的开发服务器主机名,以便它在预览模式下正常工作。
希望它有所帮助。
此致
阿列克谢