我正在使用 Winforms Reporting Services (RDLC) 生成具有子报表的报表。我的问题是子报表没有被父 ID 过滤。
数据模型的一个简单示例可能是包含员工的部门。
在报告中,我想显示所有部门并有一个子报告来显示属于该部门的员工。
我创建了一个包含两个数据表(部门和员工)的数据集。我使用 DepartmentId 列在两个表之间创建了关系。
在表格中,我使用适当的填充命令填充每个表格。我先填写Department 表,然后填写Employee 表,即Select * From Deparment 和Select * from Employee。
现在对于实际的 RDLC:Department rdlc 使用 Deparment 数据源并显示有关该部门的信息。我在这个 rdlc 上放置了一个子报表控件并设置了属性。我将 ReportProperty 传递给 Field!DepartmentId 的子报表。
在 Employee rdlc 中,我添加了 Employee 数据源并在 Property!DepartmentId 上创建了一个过滤器。
当我运行报告时,我可以循环浏览每个部门,但子报告不显示。如果我从员工数据源中删除过滤器,子报表会显示但显示所有员工。
在表单本身中,我正在处理 SubProcessing evert 并将 Employee 数据源添加到报告中。
关于如何将子报表数据链接到父级的任何想法?