2010-08-14 67 views
10

我的SSRS报告包含7个输入参数,并且在运行我的报告时参数的大小(即长度)正在增加。如何更改报告中的SSRS输入参数位置

我的一个输入参数(下拉列表)可能包含100个字符,所以大小不是恒定的,但我想将所有参数放在2行或3行(连续)中。

现在它来了2个参数每一行

请指点

回答

7

由于GBN表示,这是不容易改变的内置呈现参数的报表服务器的方法。 SSRS喜欢总是每行使用两个参数,它们按照它们在报告中存在的顺序呈现(其必须与依赖性顺序相匹配)。

因此,gbn提到的替代方法:都涉及构建“包装器”应用程序:一些自定义代码或可以编码的网页,但是您希望获取参数。然后,您可以通过代码或将带参数的格式化URL传递给Reporting Services。报告可以显示在框架,新窗口中,或者作为流传递到任何你想要的地方。

URL的访问非常直接和可靠:我经常通过手动(创建“收藏”)或代码来使用它。

http://msdn.microsoft.com/en-us/library/ms153586.aspx

对于你正在寻找,这些可能比你预期的更多的工作,但他们将是你的界面非常灵活的。

杰米

4

使用ASP.NET的PARAMATERS和ReportViewer控件或URL访问渲染。认真。

我不知道任何选项来呈现参数的任何方式其他那么默认

+0

你能指导我,如何使用SSRS的ASP.NET或URL访问此Senario – VInayK 2010-08-15 11:53:13

1

我相信你可以尝试使用jQuery。报告参数在div标记下以classsqlrv-ParameterContainer呈现在表格中。编写一个jQuery或JavaScript函数,它将从这个div即ie中提取完整的innerHTML。表格内容,然后提取表格行信息,如<label><input>标签。

<table><tr><td>{extracted sections}</td><td></td></tr></table>创建所需的表结构,或者把它留给你的要求......

然后,只需追加这个新的HTML结构代替原来的默认结构。

在jQuery中它会像

$(".sqlrv-ParameterContainer").html();

,这将给你自带的参数的内部,整个表结构。使用XML解析并获取输入控件和全部。按原样提取这些控件,不要更改任何内容。

$(".sqlrv-ParameterContainer table").remove(); // it will remove the SSRS rendered default table from DOM 

$(".sqlrv-ParameterContainer table").appendChild('<table><tr>......</tr></table>'); // Append your custom html structure here.... 

这是我想到的东西很快......我建议你测试一下......:)

+0

请尝试在你的答案的结构中加入更多的信息,例如完整的句子和更少的点。否则,有点难以阅读。 – david 2012-11-22 23:43:04

+0

此答案不处理级联,相关参数。 – DonBecker 2013-08-15 15:17:36

5

您当然可以这样做,只需右键单击解决方案资源管理器中的RDL文件并选择查看代码即可。然后根据您想要定位的位置移动名称为<ReportParameter Name="Nameofparameter">的XML标签<ReportParameters>。然后保存它。而已!!!

报告参数是浮动值为2的类型,所以如果你有4个报告参数,那么它将显示为1,2下一行3,4。祝你好运!

+2

是的,如果你想改变你的参数的位置 – Zeus 2012-06-06 22:01:49

+0

有用这肯定是没有意义的?您只需点击参数旁边的设计视图中的小箭头即可上下移动它们。 – 2012-06-26 12:53:37

+0

原始问题是询问有关参数的自定义布局,而不是默认布局中的排序。 – DonBecker 2013-08-15 15:16:47