我需要安排在SSRS中通过电子邮件发送报告。 我选择了数据驱动订阅,因为需要将报告发送到通讯组列表。
我有2个参数,Store和DateTime。 Store是一个多值参数,用户必须选择Datetime。 但是当我尝试运行数据驱动的订阅时,它会提示错误!
我经历了一些帖子,说明DDS不接受多值参数!
有工作吗? 任何人都可以详细说明如何做到这一点吗?
谢谢, Iswarya
答案 0 :(得分:0)
可能您可以尝试使用分隔方式发送参数,并在传入sql后将多个参数拆分出来。
我已经完成了几次,而且很难将这些分开。不可否认,我使用的是Oracle。
答案 1 :(得分:0)
传递给SSRS多字符串参数的值必须位于可用值列表中。如果在运行时检索报表参数值,但是用于检索可用值的查询不返回任何数据(null),则也可能发生错误。
希望这有帮助并祝你好运!
答案 2 :(得分:0)
我有同样的问题并通过使用listagg()函数在DDS查询中创建逗号分隔的值列表来解决它。例如,
SELECT email_address ,listagg(transaction_id,',')WITHIN GROUP(ORDER BY transaction_id)AS trans_ids 来自my_table
结果将是可以传递给报告的单值字符串(即'001,002,003')。在报表查询中,我使用instr()来解析字符串:
SELECT ..... WHERE instr(:Transaction_ID,transaction_id)> 0