我浏览了有关此主题的所有其他主题,但找不到答案。我有一个使用运行存储过程的数据集的报告。该 SP 返回两行,我可以在报告中的表格中显示这两行。到目前为止,一切都很好。
接下来,我添加了一个使用相同数据集的 tablix。在 tablix 的(唯一的单元格)详细信息行中,我添加了一个子报表。我将参数添加到子报表(其中四个来自数据集,一个来自主报表参数)。我创建了一个与数据集上的 Id 列相关联的行组。
当我运行主报表时,我期望看到:子报表的两个实例,一个用于 SP 返回的两行中的每一行。
我实际看到的:在 ReportBuilder 中,我只得到子报表的第一个实例。如果我从应用程序调用报告服务(将其呈现为 .PDF),则根本不会显示任何子报告。在这两种环境中,报告中都没有显示错误。
我检查过的内容:我确保 tablix、行组、子报表等中的所有各种可见性选项都设置为始终显示。我还在子报表的 NoRowsMessage 属性中添加了一些文本。当我尝试从报表服务运行子报表时,会显示该文本(每行一个)。为什么会发生这种情况我也不知道,因为我提供的参数值在两种情况下都是相同的。
我的猜测是我做行组的方式有问题,但我不知道它是什么。