我正在生成包含版本号的报告。版本号存储在DB中,并作为报告生成的一部分进行检索/递增。
唯一的问题是,我通过Web服务调用调用SSRS,它将生成的报告作为字节数组返回。
有没有办法从这个生成的报告中获取版本号?例如,显示一个说
的对话框您生成了状态报告,版本号3
我尝试传入输出参数并将其设置在storedproc中。当我在sql管理工作室中执行它时修改它,但不在报告工作室中执行。或者至少我似乎无法绑定到修改后的执行后值(使用表达式=Parameters!ReportVersion.Value
)。
当然,在调用SSRS Web服务之前,我可以自己从数据库中获取/增加版本号,并将其作为参数传递给报告,但这可能会导致一致的问题。
总的来说,对于存储过程来说,访问/生成版本号并将其返回到ReportingEngine似乎更整洁,后者将生成带有版本号的报告,并将更新的版本号返回给WebService客户端。
有什么想法/想法吗?
答案 0 :(得分:0)
因为我还不能添加评论......
把它扔出去。也许将报表呈现为XML(到XML文档对象)并通过XQuery或XPath提取您的版本号。
当然,这可能会使你的整个“版本控制”方案变得越来越糟糕,因为你将两次渲染报告。也许添加一个参数来指示是否增加版本号?
答案 1 :(得分:0)
作为一种变通方法,您可以创建一个子报告来执行此操作。而不是将版本作为输出变量返回,而是将其作为结果集中的列返回。
希望这有帮助,
比尔