Crystal Reports 可以使用 ODBC DSN 连接到数据库,您可以从中提取数据和信息以用于报告目的。
某些版本的 Crystal Reports 存在一个已知问题,应用程序无法通过 ODBC 连接打开和浏览表格和字段。在将 Crystal Reports 与 MySQL 一起使用之前,请确保您已更新到最新版本,包括任何未完成的服务包和修补程序。有关此问题的更多信息,请参阅 Business) Objects 知识库以获取更多信息。
例如,要在 Crystal Reports XI 中创建一个简单的交叉表报表,请执行以下步骤:
Data Sources (ODBC)
使用该工具 创建 DSN 。您可以指定一个完整的数据库,包括用户名和密码,也可以构建一个基本的 DSN 并使用 Crystal Reports 设置用户名和密码。出于本示例的目的,已创建一个 DSN,它提供与 MySQL Sakila 示例数据库实例的连接。
打开 Crystal Reports 并创建一个新项目,或者打开一个现有的报告项目,您要向其中插入来自 MySQL 数据源的数据。
通过单击起始页上的选项启动交叉表报表向导。展开Create New Connection文件夹,然后展开ODBC (RDO)文件夹以获得 ODBC 数据源列表。
系统将要求您选择数据源。
当您第一次展开ODBC (RDO) 文件夹时,您将看到数据源选择屏幕。从这里您可以选择预配置的 DSN、打开基于文件的 DSN 或输入和手动连接字符串。对于此示例,将使用预配置的 Sakila DSN。
如果 DSN 包含用户名/密码组合,或者您想要使用不同的身份验证凭据,请单击 下一步以输入您想要使用的用户名和密码。否则,单击 完成以继续数据源选择向导。
您将返回交叉表报表创建向导。您现在需要选择要包含在报告中的数据库和表。对于我们的示例,我们将展开选定的 Sakila 数据库。单击
city
表格并使用 >按钮将表格添加到报告中。country
然后用桌子重复这个动作 。或者,您可以选择多个表并将它们添加到报告中。最后,您可以选择父 Sakila资源并将表添加到报告中。
选择要包括的表后,单击 下一步继续。
Crystal Reports 现在将读取表定义并自动识别表之间的链接。表与表之间链接的识别使Crystal Reports能够根据您的查询自动查找和汇总基于数据库中所有表的信息。如果 Crystal Reports 无法自行执行链接,您可以手动创建所选表中字段之间的链接。
单击“下一步”继续该过程。
您现在可以选择要包含在交叉表报表中的列和行。拖放或使用 >按钮将字段添加到报告的每个区域。在所示示例中,我们将报告按国家/地区组织的城市,并包含每个国家/地区内的城市数量。如果要浏览数据,请选择一个字段并单击浏览数据...按钮。
单击下一步创建结果图。由于我们没有根据该数据创建图表,因此单击Finish生成报告。
将显示完成的报告,下面显示了 Sakila 示例数据库的输出示例。
在 Crystal Reports 中打开 ODBC 连接后,您可以浏览并将可用表中的任何字段添加到您的报告中。