具有子报表的多个子报表将值传递给其他子报表

时间:2013-12-19 14:25:14

标签: c# sql-server winforms reportviewer subreport

我在WinForms的C#中使用Report Viewer。我有3个数据库表:Equipament,Sector和History,我还有3个Report.rdlc,MAIN是ReportEquipament,另外两个子报告是ReportSector和ReportHistory。我已经知道如何填写ReportSector,我想要做的是从ReportSector传递idSector,这样我就可以在SQL Server数据库中调用一个过程并使用这个扇区ID搜索所有历史记录,并在ReportHistory。我不知道该怎么做。我是ReportViewer的新手,这是我第一次做报告。

PS:我知道该怎么做,只是不知道如何使用它。

感谢。

纳斯。

让我试着更好地解释一下:

我寻找一个特定的设备,并且许多部门通过了设备, 当他在这个部门时,他遇到了问题,这个问题与此有关 该部门。

我想要的是这样的:

装备:X

部门:(这里传递设备的ID以找到他所拥有的部门)

扇区:X(此处扇区的ID传递给子报告“问题”) 问题:(使用扇区的ID我搜索该部门的所有问题) 问题:X 问题:Y

扇区:Y(此部门的ID传递给子报告“问题”) 问题:(使用扇区的ID我搜索该部门的所有问题) 问题:X 问题:Y

2 个答案:

答案 0 :(得分:0)

好的,在重新阅读之后你就会问到并理解你在这里问的是我如何解决SSRS的类似问题。如果您在加载主报表(而不是子报表)时有id变量,那么您需要做的就是将该参数传递到主报表并通过子报表访问它。

请看这里:http://social.msdn.microsoft.com/Forums/sqlserver/en-US/92ea8f6b-ad27-42b9-a673-72ee9ce2d1fc/how-to-pass-parameters-to-ssrs-sub-reports?forum=sqlreportingservices

在这里:http://technet.microsoft.com/en-us/library/ms160348(v=sql.100).aspx

如果您需要首先运行主要和第一个子报告然后获取ID,那么您最无痛苦的方法是运行一个报告,然后让用户输入更多信息以运行第二个报告。如果你真的想要这样做,那么可以与报告互动

请看这里:http://sqlserverbiblog.wordpress.com/2011/02/14/can-i-add-controls-to-a-reporting-services-report-3/

答案 1 :(得分:0)

如果我没错,你会在子报告中传递参数传递问题。 Here is the link for that