[英]How to filter data inside subreport RDLC
我在报表中有一个子报表,并将参数传递给子报表tutorUsername
。 创建报告时的代码如下:
reportViewer1.LocalReport.ReportPath = (reportPath + "TestReport.rdlc");
reportViewer1.LocalReport.SubreportProcessing += new SubreportProcessingEventHandler(prcProcessSubReport);
reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("test_DataSet", report));
ReportParameter[] tmpParameters = new ReportParameter[1];
tmpParameters[0] = new ReportParameter("serverNames", serverNamesList, false);
reportViewer1.LocalReport.SetParameters(tmpParameters);
和:
private void prcProcessSubReport(object sender, SubreportProcessingEventArgs e)
{
try
{
string tutorUserName = e.Parameters["tutorusername"].Values[0].ToString();
ReportDataSource rdsTradeDetails = new ReportDataSource("Test_DataSet", report);
e.DataSources.Add(rdsTradeDetails);
//Code End
}
catch (Exception eX)
{
}
}
现在的问题是我确实得到了参数valye,但是它是(Fields!Tutor_Username.Value, \\"TEST_DataSet\\")
。 我以这种方式假设我将获得每个教师的用户名,并使用参数创建/ filter数据表并相应地添加。 有什么帮助吗? 我做错了什么,还有其他方法可以获取参数值吗?
IT很简单,必须这样做:
string tutorUserName = (e.Parameters["tutorusername"].Values.First()).ToString();
ReportDataSource rdsTradeDetails = new ReportDataSource("Test_DataSet", report);
e.DataSources.Add(rdsTradeDetails);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.