这是用户想要的场景...... ETL通常在凌晨5点完成,并且在成功加载后将一行插入表中。 从早上5点开始,SSRS报告应该查找要插入的行,例如每隔30秒。 当它看到插入了一行并且SSRS报告应该运行时,该报告又向订阅中指定的用户发送电子邮件。
有没有办法在没有SQL -RD的情况下实现这一目标? 请给我一个方向,因为我是MSBI的新手。
此致 Chakrapani M
答案 0 :(得分:0)
它不是理想的解决方案,但如果您正在运行企业版,则可以设置数据驱动订阅以检查插入的行,如果它存在,则返回电子邮件地址列表 - 使用此返回值填充" TO:"数据驱动订阅中的字段。如果没有数据,则不会返回任何电子邮件地址,订阅只会“失败”#34;
或者,如果您有权访问,只需找到订阅在SSRS SQL主机上创建的作业,并更改它以添加必要的条件逻辑,以便在适当时仅运行订阅。
答案 1 :(得分:0)
使用包含3个任务的SSIS包:
将程序包部署并添加到SQL Server作业,计划为30秒。
或者将延迟(计划)放在包中。即使用For循环容器(带有可选的循环结束计数)并将3个任务转储到其中,在任务1失败时使用额外的延迟任务场景,在任务3成功的早期退出循环。记住设置For的MaximumErrorCount循环到0并且循环中的每个单独任务除了第一个任务FailPackageOnError属性为True之外,以避免在ETL没有结果的情况下调用延迟的故意错误。