在 XML 驱动程序中创建 HTTP 参数

  1. 在“HTTP 参数”屏幕上,单击“添加属性”
  2. 在“编辑属性值”屏幕上的“属性”字段中输入参数名称。
  3. “值”字段中以 @Prompt 函数形式输入参数公式。

    有关 @Prompt 函数语法的信息,请参见参数公式

参数公式

可使用 @Prompt 函数创建参数公式。当您想在 XML 流中实施限制但又不想预设条件值时,该函数十分有用。

该函数的语法如下所示:

@Prompt('message','type',[lov],[MONO|MULTI],[FREE|CONSTRAINED])

语法 说明

'message'

此参数是提示消息的文本。文本必须用单引号括起来;例如,'选择一个地区'、'选择一个时期' 或 '选择一个展室'。当完成连接时将在提示框中显示该文本。

'type'

此参数描述该函数返回的数据类型。它可以是以下类型之一:

  • 'A' 表示字母数字
  • 'N' 表示数字
  • 'D' 表示日期

指定的数据类型必须用单引用括起来。

lov

此参数提供值列表 (lov)。列表采用硬编码形式;也就是说,您需要输入各个值来创建它。每个值都用单引号括起来并由逗号隔开。整个列表用大括号括起来。例如,{'澳大利亚', '法国', '日本', '英国', '美国'}。此参数是可选的。

MONO

用户只能从值列表中选择一个值。MONO 是 MONO|MULTI 对的默认值。此参数是可选的。

MULTI

用户可以从值列表中选择多个值。MONO 是 MONO|MULTI 对的默认值。此参数是可选的。

FREE

用户可以输入他们选择的值,也可以从值列表中选择值。FREE 是 FREE|CONSTRAINED 对的默认值。此参数是可选的。

CONSTRAINED

用户必须从值列表中选择值。FREE 是 FREE|CONSTRAINED 对的默认值。此参数是可选的。

注意:    对于每个可选参数,如果将其忽略,仍必须输入逗号作为分隔符。

连接到 XML 数据源

选择 XML 作为数据源
  1. 在 Crystal Reports 中的“文件”菜单上,单击“新建”
  2. 单击“使用报表向导”
  3. “选择向导”列表中,单击“标准”;然后单击“确定”
  4. 在“报表创建向导”的“数据”屏幕上,双击“创建新连接”
  5. 双击“XML”

    将会出现 XML 对话框。

  6. 选择 XML 数据源访问类型:
  7. 通过按照以下某一节中的步骤操作,确定要与之连接的 XML 文件:
连接到本地数据源
  1. 如果选择“使用本地数据源”,请输入 XML 文件的完整路径和文件名,或使用该字段旁边的按钮搜索该文件。
  2. 如果要向所选的 XML 文件应用架构,请选择“指定架构文件”

    如果 XML 文件未包含嵌入的架构信息,您必须选择此选项并指定架构。

    注意:    在下一屏幕上指定架构的位置和名称。

  3. 单击“下一步”

    根据上一步所做的选择,您将会看到一个用于指定架构的屏幕,或者您可以单击“完成”按钮。

  4. 要指定架构文件,请选择“使用本地架构”“使用 HTTP(S) 架构”并填写旁边的字段。
  5. 单击“下一步”,然后单击“完成”
连接到 HTTP(S) 数据源
  1. 如果选择“使用 HTTP(S) 数据源”,请输入指向 XML 文件的 URL。

    可以使用 HTTP 或 HTTPS 来定义 URL。

  2. 如果要向所选的 XML 文件应用架构,请选择“指定架构文件”

    如果 XML 文件未包含嵌入的架构信息,您必须选择此选项并指定架构。

    注意:    在下一屏幕上指定架构的位置和名称。

  3. 单击“下一步”
  4. 输入身份验证信息(如果需要的话),然后再次单击“下一步”

    根据您在第 2 步中的选择,您将会看到一个用于指定架构的屏幕,或者用于定义 HTTP 参数的屏幕。如果您看到“HTTP 参数”屏幕,请跳到第 6 步。

  5. 要指定架构文件,请选择“使用本地架构”“使用 HTTP(S) 架构”并填写旁边的字段。
  6. 在“HTTP 参数”屏幕上,创建可添加到 URL 中的参数,以限制 XML 文件中返回的结果。
  7. 在设置完“HTTP 参数”屏幕后,请单击“完成”
连接到 Web Service 数据源
  1. 如果选择“使用 Web Service 数据源”,请单击“下一步”继续。
  2. 要指定 Web Service 文件位置,请选择“使用本地 WSDL”“使用 HTTP(S) WSDL”并填写旁边的字段。
  3. 单击“下一步”

    根据您在上一步中所做的选择,您将会看到一个用于指定 Web Service、端口和方法的屏幕,或者用于为 Web Service URL 定义身份验证的屏幕。如果您看到“Web Service、端口和方法”屏幕,请跳到第 5 步。

  4. 输入身份验证信息(如果需要的话),然后单击“下一步”
  5. 在“Web Service、端口和方法”屏幕上,从列表中选择一个服务、端口和方法。
  6. 单击“完成”

一旦可以看到从 XML 数据源创建的表,您就可以使用它来创建 Crystal 报表,方法与使用任何其他数据源相同。有关创建 Crystal 报表的更多信息,请参见《Crystal Reports 用户指南》

CRDB_JavaServer.ini 参数引用

有关 CRDB_JavaServer.ini 文件的位置,请参阅必需组件

CRDB_JavaServer.ini 中出现的参数取决于您所安装的驱动程序。例如,如果您未安装本机 XML 驱动程序,就不会出现 [CRDB_XML] 参数。在最佳情况下,CRDB_JavaServer.ini 文件包含以下参数:

参数名称 说明

Path

Path 参数值包含 Java 可执行文件的目录。如果您安装了多个版本的 Java 运行时环境,此参数会指向您要使用的版本;例如:

PATH=C:\apps\j2sdk1.4.2\bin

此外,路径信息还可以配置为用户或系统环境变量。在这种情况下,如果将 JAVA_HOME 定义为变量,则可以使用 ${JAVA_HOME},如以下示例所示:

PATH=${JAVA_HOME}\bin

Classpath

Classpath 参数值包含以下 .jar 文件的类路径列表:

  • CRDBJavaServer.jar
  • 所有特定于数据库的 JDBC 驱动程序 .jar 文件

    例如,对于 Oracle JDBC 驱动程序,必须提供 ojdbc14.jar 的类路径。

此外,类路径信息还可以配置为用户或系统环境变量。如果不定义此变量,它将等效于 CLASSPATH=${CLASSPATH}

环境变量也可以包含在混合路径中,如以下示例所示:

classpath=c:\java\lib\xerces.jar;${CommonProgramFiles}"/Crystal Decisions/2.5/bin/CRDBJavaServer.jar";${CLASSPATH}

注意:    将类路径用于包含空格的长文件夹名称和/或文件名时,确保将它们括在引号内。例如,"C:\Program Files\Common Files\Crystal Decisions\2.5\bin\CRDBJavaServer.jar"

IORFileLocation

IORFileLocation 参数值提供由 JDBC 驱动程序使用的临时目录。此位置必须存在并且可由系统访问;否则,驱动程序将无法工作。

JavaServerTimeout

JavaServerTimeout 参数指定 Java 服务器在自行关闭之前将继续处理请求的最长时间。默认值为 1800 秒(30 分钟)。

JVMMaxHeap

JVMMaxHeap 参数指定为了运行 Java 服务器 JVM 可以分配的最大堆空间。默认情况下,此参数设置为 64 MB 堆空间。如果您需要处理大量数据,可将此数值改为更大值。

JVMMinHeap

JVMMinHeap 参数指定为了运行 Java 服务器 JVM 可以分配的最小堆空间。默认情况下,此参数设置为 32 MB 堆空间。

CacheRowSetSize

CacheRowSetSize 参数指定要在内存中缓存的行数。默认情况下,此参数设置为 100 行。

JDBCURL

JDBCURL 参数值是创建新 JDBC 数据连接时将显示在 Crystal Reports 中的默认 JDBC 连接 URL。连接 URL 的确切格式特定于数据库驱动程序,并且由数据库驱动程序供应商提供。

例如,Oracle JDBC 驱动程序的连接 URL 为:

jdbc:oracle:thin:@<hostname>:<port>:<sid>

其中:

  • <hostname> 是所连接服务器的 TCP/IP 地址或 TCP/IP 主机名。
  • <port> 是 TCP/IP 端口号。
  • <sid> 是 Oracle 数据库 ID。

JNDIURL

JNDIURL 参数值是默认 JNDI 连接 URL,在创建新的 JNDI 数据连接时,它将显示在 Crystal Reports 中。连接 URL 的确切格式特定于数据库驱动程序,并且由数据库驱动程序供应商提供。

JDBCUserName

JDBCUserName 是默认用户 ID,在创建新的 JDBC 数据连接时,它将显示在 Crystal Reports 中。JDBC 驱动程序使用该用户 ID 连接到数据库。

JDBCDriverName

JDBCDriverName 是 JDBC 驱动程序的默认完整类名,在创建新的 JDBC 数据连接时,该名称将显示在 Crystal Reports 中。

例如,Oracle JDBC 驱动程序的完整类名为:

oracle.jdbc.driver.OracleDriver

JNDIUserName

JNDIUserName 是默认用户 ID,在创建新的 JNDI 数据连接时,它将显示在 Crystal Reports 中。JDBC 驱动程序使用该用户 ID 连接到数据库。

JNDIConnectionFactory

JNDIConnectionFactory 参数是 JNDI 服务器的连接工厂的名称。对于 WebLogic,它是 weblogic.jndi.WLInitialContextFactory。对于 WebSphere,它是 com.ibm.websphere.naming.WsnInitialContextFactory

JNDIInitContext

JNDIInitContext 参数是在 JNDI 服务器上查找 JNDI 上下文的起始点。例如,您可以为 WebLogic 设置 JNDIInitContext=/。该参数会从树的顶端开始搜索。如果您在 WebSphere 节点上创建了连接,则您可以将此参数设置为 cell/nodes/localhost/servers/server1/jdbc。

GenericJDBCDriverBehavior

如果您使用的是通用 JDBC 驱动程序而不是专用驱动程序,GenericJDBCDriverBehavior 参数可指定您要模拟其行为的驱动程序。默认情况下被设置为模拟 DB2 JDBC 驱动程序的行为。保留此设置意味着您要向最终用户公开类似 DB2 JDBC 驱动程序这样的功能。有效值为 DB2SQLServerOracle

PREREADNBYTE

PREREADNBYTE 参数确定每个逻辑读取操作从 XML 文档读取的字节数。此参数可用于提高效率并且可用来避免一次读取一个字节;它与块读取大小相同。该大小不能太小(至少为 4096)。将该值设置得太大会影响内存使用。默认情况下,此参数设置为 5000。

XMLLOCALURL

XMLLOCALURL 参数值是本地 XML 文件的默认连接 URL。在创建新 XML 数据连接时,此默认值将显示在 Crystal Reports 中。

SCHEMALOCALURL

SCHEMALOCALURL 参数值是本地架构文件的默认连接 URL。在创建新 XML 数据连接时,此默认值将显示在 Crystal Reports 中。

XMLHTTPURL

XMLHTTPURL 参数值是 HTTP XML 文件的默认连接 URL。在创建使用 HTTP(S) 的新 XML 数据连接时,此默认值将显示在 Crystal Reports 中。

SCHEMAHTTPURL

SCHEMAHTTPURL 参数值是 HTTP 架构文件的默认连接 URL。在创建使用 HTTP(S) 的新 XML 数据连接时,此默认值将显示在 Crystal Reports 中。


Business Objects
http://www.china.businessobjects.com

支持服务
http://www.china.businessobjects.com