使用SSRS和SSIS自动执行Excel输出C#

时间:2018-08-24 16:24:25

标签: c# reporting-services ssis

我正在寻找一些c#代码,可以将其放入SSIS中的脚本任务中,该脚本任务将运行SSRS报告。我不希望部署或发布我的SSRS报告。我只想能够调用rdl并运行它,并生成一个excel输出。

这可以在SSIS中完成并放到Excel中,但是SSRS具有更多的格式化和修饰功能。

任何人都可以帮助我...或为我指出正确的方向吗?我已经在网上搜索了,似乎zappy有可用的扩展名,但这在我在工作计算机上时不可行。

1 个答案:

答案 0 :(得分:2)

.rdl只是报告定义,它没有任何导出功能。全部由报告服务处理。为了执行您要的操作,您必须利用这些服务并复制诸如Visual Studio之类的工具在后台进行操作。正如您所发现的,没有任何文档或先例。

我建议将报表的副本部署到报表服务器,但是将其设置为隐藏。这样,只有报表服务器管理员才能看到它。接下来,设置订阅以将报告导出到特定位置。在后台,这将创建一个SQL Server作业,您可以从C#代码中触发该作业。因此,您将调用该作业,等待其完成,然后使用其生成的输出。

在不使用报表服务器的情况下,您必须具有手动步骤才能在Report Builder或Visual Studio中运行报表。您可以通过C#进行许多Excel格式设置,但是要比使用可视界面困难得多。而且,如果您有大型数据集,那么逐个格式化单元格的格式可能真的很慢。

欢迎堆栈溢出,希望对您有所帮助。