我目前正在使用C#编写一个程序,允许我们的用户运行、查看和导出一批水晶报表。这些报表是使用Crystal Reports 2008 GUI制作的。其中一个主要原因是在将Crystal Report导出为PDF时,保留超链接。我的程序通过导出到rtf,然后将rtf转换为pdf来实现这一点。如果有人知道更简单的方法来保留超链接,请告诉我,但这不是我当前的问题。
我进行了很多测试,以优化我的程序,使导出所需的时间尽可能短。从我的测试中,查询数据,然后将结果集绑定到Crystal Report是迄今为止最快的方法。我的问题是,我无法在程序中硬编码查询,它们需要从Crystal Report本身检索。
在Crystal Reports 2008中,有一个名为“Show SQL Query”的选项,位于Database菜单下。这会打开一个窗口,显示给定报表所使用的SQL查询。这正是我需要从我的应用程序中获取的内容。我已经加载了一个水晶报表,然后在调试时遍历了ReportDocument对象,试图找到查询,但没有成功。
所以,我的问题是; 是否有任何可用的方法,允许我提取给定Crystal Report使用的查询?
我进行了很多测试,以优化我的程序,使导出所需的时间尽可能短。从我的测试中,查询数据,然后将结果集绑定到Crystal Report是迄今为止最快的方法。我的问题是,我无法在程序中硬编码查询,它们需要从Crystal Report本身检索。
在Crystal Reports 2008中,有一个名为“Show SQL Query”的选项,位于Database菜单下。这会打开一个窗口,显示给定报表所使用的SQL查询。这正是我需要从我的应用程序中获取的内容。我已经加载了一个水晶报表,然后在调试时遍历了ReportDocument对象,试图找到查询,但没有成功。
所以,我的问题是; 是否有任何可用的方法,允许我提取给定Crystal Report使用的查询?
Table
-> 非公共成员 -> RasTable -> 动态视图,你就能看到查询语句了。现在需要弄清楚如何在代码中访问它... - dotjoe