SSRS 2016 报告或共享数据集具有用户配置文件依赖性,不能 运行 无人值守

SSRS 2016 report or shared dataset has user profile dependencies and cannot be run unattended

我正在构建一个设计灵活的 SSRS 报告,这样我就不必根据您在公司中的角色创建报告的多个副本。我正在使用 User!UserID 内置参数来驱动我的报告参数之一(这会根据您在我们的 HR 系统中的角色过滤最重要的参数)。这部分效果很好。

但是,我还需要能够使用数据驱动的订阅来安排此报告,但是由于我使用的是 User!UserID 参数,它会给我一个错误,提示我无法设置数据驱动的订阅,如果存在用户配置文件依赖性。有没有办法解决?我知道我可以创建一个标准订阅并且它工作正常,但考虑到我们组织的规模,数据驱动将是理想的。

有什么想法吗?

我能够通过以下文章找到解决方案:

https://social.msdn.microsoft.com/Forums/en-US/9c9b650e-d239-4038-8e50-5dd995621c74/how-to-deal-with-useruserid-in-datadriven-subscriptions?forum=sqlreportingservices

“除了自定义代码解决方案之外,您还可以创建一个包含 userdID 的隐藏参数。

使用自定义代码函数 (Code.UserName()) 输出的默认值声明该参数,并在报告中使用此参数替代 User!UserID。安排此报告时,您将此参数与订阅查询的输出绑定。

如果您还没有从博客中获取自定义代码:

Public 函数用户名() 尝试 Return Report.User!用户ID 抓住 Return "System" 结束尝试 结束函数