将子报表添加到 rdl table 单元格
Adding a subreport to rdl table cell
我有这份 RDL 报告,它需要显示一个对象列表。
每个对象本身包含多个图表和 tables 所以我的想法是在我的报告中添加一个 table 并将子报告添加到 table 单元格并提供每个对象的 ID通过子报表的参数。
这是我的报告目前的样子:
许多站点建议可以通过导航到支持属性屏幕并使用 "Use this report as subreport" 部分上的浏览按钮来选择正确的文件,但我的设计器没有浏览按钮:
我的第一个想法是只输入路径。但这不起作用,因为它不支持 : 或 \
在这里我想提一下,我们将报告部署在应用程序部署文件夹的子文件夹中(通常是 "C:\Program Files\Company\Application\data\ReportDefinitions" 行中的内容),而且报告文件不包含在应用程序的解决方案中。它们会根据需要在 运行 时间加载。
我还检查了 msdn 对此事的看法。有些页面建议使用类似 ="path" 的表达式,但出于同样的原因,这不起作用。
Microsoft 的另一篇文章是这样说的:
但这不管用,因为它无法以任何方式找到报告子报告:
我已经双重检查和三次检查。子报表与主报表在同一个文件夹中,名称正确,但就是看不到
我已经在这上面花了好几个小时,我觉得我已经用尽了所有的选择。
我错过了什么?
看来我的问题是没有正确加载子报表。
我以务实的方式加载和呈现我的报告。添加以下行解决了问题
localReport.LoadSubreportDefinition(
"SingleCalibrationCurveReport",
new StreamReader(Path.Combine(this.systemSettings.DataPath, @"ReportDefinitionFiles\SingleCalibrationCurveReport.rdlc")));
我有这份 RDL 报告,它需要显示一个对象列表。 每个对象本身包含多个图表和 tables 所以我的想法是在我的报告中添加一个 table 并将子报告添加到 table 单元格并提供每个对象的 ID通过子报表的参数。
这是我的报告目前的样子:
许多站点建议可以通过导航到支持属性屏幕并使用 "Use this report as subreport" 部分上的浏览按钮来选择正确的文件,但我的设计器没有浏览按钮:
我的第一个想法是只输入路径。但这不起作用,因为它不支持 : 或 \
在这里我想提一下,我们将报告部署在应用程序部署文件夹的子文件夹中(通常是 "C:\Program Files\Company\Application\data\ReportDefinitions" 行中的内容),而且报告文件不包含在应用程序的解决方案中。它们会根据需要在 运行 时间加载。
我还检查了 msdn 对此事的看法。有些页面建议使用类似 ="path" 的表达式,但出于同样的原因,这不起作用。
Microsoft 的另一篇文章是这样说的:
但这不管用,因为它无法以任何方式找到报告子报告:
我已经双重检查和三次检查。子报表与主报表在同一个文件夹中,名称正确,但就是看不到
我已经在这上面花了好几个小时,我觉得我已经用尽了所有的选择。 我错过了什么?
看来我的问题是没有正确加载子报表。 我以务实的方式加载和呈现我的报告。添加以下行解决了问题
localReport.LoadSubreportDefinition(
"SingleCalibrationCurveReport",
new StreamReader(Path.Combine(this.systemSettings.DataPath, @"ReportDefinitionFiles\SingleCalibrationCurveReport.rdlc")));