使用Sqlserver 2012。
假设我有一个SSRS rdl报告“P”,它调用多个子报告“S1”,“S2”。 只是想知道是否可以查看(在日志文件等中)P在报告生成期间传递给S1和S2的参数和值。
我知道您可以在ExecutionLog3等视图中查看传递给父报表P的参数和值,但找不到子报表参数的任何记录。
解决方法是在子报表本身中显示参数值,但这并不理想。报告本身运行正常..需要参数用于诊断目的。
答案 0 :(得分:1)
我建议将日志记录过程添加到每个子报表中主数据集的开头,这样只有在调用子报表时才会触发。
换句话说," S1"的数据集可能看起来像......
INSERT INTO dbo.MyLogTable (SubReportName, Parm1, Parm2, ActionDate)
VALUES ('S1', @p1, @p2, GetDate())
{Your original dataset SQL here}
如果您的参数是多值的,那么您可能必须首先进行一些操作,但您会得到我希望的想法。 您还可以通过使用报表服务器目录中子报表的ID来改进这一点,以防您希望将其连接回执行日志。