0

我有一个复杂的报告要求来创建重新订购制造材料报告。数据来自三个不同的数据库:两个通过 ODBC 的 Oracle 数据库和一个 SQL Server 数据库。用户需要传入参数的日期范围。我想做的事情是在 C# 中对数据进行组合和执行业务逻辑,然后将数据传递给报表。这在 Active Reports 中将是一项简单的任务,但 SSRS 是客户端所拥有的全部。

我如何拥有参数屏幕并将数据表传递给 SSRS 报告?

我现在唯一能想到的就是创建一个自定义 ASP.NET 参数屏幕,收集数据,将数据保存到表中,然后运行报告。我还必须有一个 cron 工作来清除报告表中的旧数据。这是肯定的。

4

1 回答 1

0

最简单的方法是从 Sql Server 将链接服务器设置到 Oracle 数据库,然后您可以在 SQL 中跨服务器连接并从三个数据库创建单个数据集。

您可以将 C# 程序转换为返回 XML 的 Web 服务,并将其用作报表中的数据源。

我使用的另一种稍微复杂的方法是创建一个自定义数据处理扩展来提供数据。虽然这在前面有点繁重,但如果您有一个需要查询的 API 而不是数据库(例如,RESTful Web 服务),那么这是一个强大的解决方案。

于 2013-11-13T00:40:39.770 回答