无法使用 oracle 存储过程在水晶报表 2013 中创建报表
Posted
技术标签:
【中文标题】无法使用 oracle 存储过程在水晶报表 2013 中创建报表【英文标题】:unable to create report in crystal reports 2013 with oracle stored procedures 【发布时间】:2014-06-22 07:17:20 【问题描述】:我正在尝试基于 oracle 存储过程在 Crystal 2013 中创建报告。我的过程接受一个输入参数并返回一个强绑定的引用游标。此过程在 sql*plus 中运行时运行良好。当我在数据库专家中选择程序时,系统会提示我输入输入参数的值以及引用光标中的所有其他列。我将参数设置为默认值(选中设置为空框)并按下确定按钮。收到以下错误消息。
数据库连接器错误:'HY000:[Oracle][ODBC][Ora]ORA-06550:第 1 行,第 8 列: PLS-00306:调用“CR_TEST_PROC2”时参数的数量或类型错误 ORA-06550:第 1 行,第 8 列: PL/SQL:语句被忽略 [数据库供应商代码:6550]
即使我提供了参数,我也会得到同样的错误。我在数据源中使用 OraClient 11g_home1 驱动程序。似乎水晶中对oracle存储过程的支持并不多。不知道是不是驱动的问题。我想看看是否有人遇到过这个问题以及他们是如何解决的。
提前致谢
【问题讨论】:
能否提供sqlplus和crystal的调用? 【参考方案1】:几个建议:
-
为您的参数提供一个值而不是 null(任何值都可以,它不需要是返回记录的值)并尝试将其映射到您的报告。
如果上述方法不起作用,您是否可以尝试使用 oracle 服务(根据您的描述,您似乎使用 ODBC 驱动程序进行连接)将存储过程链接到您的报告?对于此方法,您需要使用 tnsnames.ora 文件中提到的确切服务名称。
希望这会有所帮助。
【讨论】:
以上是关于无法使用 oracle 存储过程在水晶报表 2013 中创建报表的主要内容,如果未能解决你的问题,请参考以下文章
水晶报表问题 我现在有配电室的全部数据 怎么把‘合计/平均’ 在不改存储过程的情况下获得这个数据。