注意: 目前,本机 XML 驱动程序仅支持英语、法语、德语和日语。请在“开发人员交流区”检查有关其他语言的信息,网址为 http://www.businessobjects.com/ipl/default.asp?destination=developerzone&language=EN&product=CRJavaProducts&edition=Professional&version=10.0&Partner=IBM
用于 Crystal 产品的本机 XML 驱动程序读取 XML 流并根据相应架构 (XSD) 分析其内容,以导出数据的层次表形式。这样,在您创建报表时 Crystal Reports 就会使用此层次表形式。
注意: 当 Crystal Reports 使用 XML 本身时,该层次表形式将根据内部查询定义直接映射回 XML。XML 从不会被解析到关系表模型中。
在分析 XML 流时,必须为要使用的 XML 驱动程序指定架构或文档类型定义 (DTD);该驱动程序使用此架构或 DTD 来确定如何将 XML 数据类型转换为 Crystal 数据类型。有关架构和如何转换数据类型的更多信息,请参见架构。
有关本机 XML 驱动程序的更多信息,请访问位于以下网址的 Developer Zone(开发人员专区):
http://www.businessobjects.com/ipl/default.asp?destination=developerzone&language=EN&product=CRJavaProducts&edition=Professional&version=10.0&Partner=IBM
您可在此站点上找到示例和其他信息。有关 XML 的一般概述,请参见 《Crystal Reports 用户指南》。
您需要配置 CRDB_JavaServer.ini
文件,然后才能在 Crystal Reports 中使用本机 XML 驱动程序。有关此文件的位置,请参阅必需组件。有关参数及其说明的完整列表,请参见CRDB_JavaServer.ini 参数引用。您必须配置的主要参数有 Path、Classpath 和 IORFileLocation。
CRDB_JavaServer.ini
文件中包含路径信息,则可能需要为 Java 目录设置环境变量。在这种情况下,请创建指向 JDK 位置的 JAVA_HOME 环境变量。CRDB_JavaServer.ini
文件中的路径信息。路径信息必须与 CRDBXMLExternal.jar
和 CRDBJavaServer.jar
文件的实际位置正确匹配。示例文件在路径中使用英文的文件夹名称,可能需要进行修改,才能符合计算机上使用的本地化文件夹名称。在通过选择 XML 驱动程序在 Crystal Reports 中创建新连接时,您可以从多个可能的数据源类型中进行选择。本节将逐个介绍每种类型。有关连接时需要完成的步骤,请参见连接到 XML 数据源。
本地数据源是本地计算机或网络驱动器上的 XML 文件,您可以通过输入路径和文件名与之连接。XML 驱动程序允许您键入完整路径和文件名,您也可以通过在“打开”对话框中进行搜索来选择文件。如果您有用于 XML 文件的架构 (XSD),则可以指定该架构。有关架构和如何使用它们的更多信息,请参见架构。
HTTP(S) 数据源是您可以从 Servlet、ASP 页、JSP 页或动态创建的其他类型的 Web 页访问的 XML 文件或 XML 流。您提供的此类数据源的 URL 可以是 HTTP 也可以是 HTTPS。在使用 HTTPS 时,在 Crystal Reports 或 Crystal Enterprise 中输入的用户 ID 和密码将用于依据基础 HTTP 提供程序进行身份验证。
XML 驱动程序允许您键入 URL 并随后添加身份验证凭据。如果您有用于 XML 文件或 XML 流的架构 (XSD),则可以指定该架构及其身份验证凭据。有关架构和如何使用它们的更多信息,请参见架构。
HTTP(S) 数据源也支持 HTTP 参数。有关更多信息,请参阅HTTP 参数。
Web Service 数据源可以是本地计算机或网络驱动器上的服务,您可以通过输入路径和文件名与之连接;也可以是从 Servlet 或动态创建的 Web 页访问的服务。您提供的此类数据源的 URL 可以是 HTTP 也可以是 HTTPS。响应 XML 文件的架构是通过 Web Service 框架导出的,而不是手动指定的。
可通过 WSDL(Web Service 描述语言,它是描述 Web 服务的标准格式)访问 Web Service 数据源。指定 WSDL 后,该驱动程序会提示您选择要使用的服务、端口和方法。
在使用 XML 驱动程序时,可以指定您所选择的架构 (XSD) 或文档类型定义 (DTD),也可以使用 XML 文档中嵌入的架构信息。架构用于确定如何在 Crystal Reports 中呈现 XML 数据。
注意: 当您指定用于 XML 文件的架构时,将使用指定的架构,而不是 XML 文件中嵌入的或该文件本身引用的架构信息。
下表显示了本机 XML 驱动程序如何将 XML 数据类型映射为 Crystal 数据类型。
XML 类型 | Crystal 类型 |
---|---|
XML 驱动程序可处理 XML 属性、名称空间、特定数据类型和标记,如下表所述。
当无法确定 XSD 或 DTD 架构的最外层(根)元素时,将显示所有可能的根元素,并且作为数据连接的一部分您必须选择根元素。
在选择 HTTP(S) 数据源时,还可以定义 HTTP 参数,以传递给基础 Servlet 或动态创建的 Web 页。这些参数向 Servlet 或 Web 页提供信息以返回正确的 XML 流。这些参数作为 Form 变量传递给基础连接。Form 变量名与 Crystal 参数名相对应(例如,Crystal {?REGION} 参数等同于 Form 变量“REGION”)。
用选定的多个值传递的所有参数都使用同一名称提交多个 Form 变量。请看以下示例:
<input type=checkbox name=flavor value=vanilla>香草<br>
<input type=checkbox name=flavor value=strawberry>草莓<br>
<input type=checkbox name=flavor value=chocolate checked>巧克力<br>
如果您同时选择了巧克力和香草,则将提交两个名为 flavor 的 Form 变量,各个变量的值分别为香草和巧克力,就像在使用 GET 格式的 "http://server/servlet?flavor=Vanilla&flavor=Chocolate"
中一样。通过 Crystal Reports 同时选择了香草和巧克力的{?flavor}
将分别创建相同的 URL 请求。
Business Objects http://www.china.businessobjects.com 支持服务 http://www.china.businessobjects.com |