找回密码
 立即注册

QQ登录

只需一步,快速开始

hbtx

论坛元老

21

主题

61

帖子

1万

积分

论坛元老

积分
11127

活字格认证

hbtx
论坛元老   /  发表于:2013-6-26 14:19  /   查看:6157  /  回复:5
数据库为Oracle,按照帮助文档里的方法做钻取报表,只要在数据源中添加参数,全都报下图错误。是不是不支持在Oracle数据源中添加参数,还是对Oracle有不一样的处理方法?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

5 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2013-6-26 16:04:00
沙发
回复 1楼hbtx的帖子

hbtx 你好

PageReport中针对不同数据库类型,使用的查询参数设置方式也有些差别,因为我这边没有Oracle环境,我先给出 SQL Server 中的设置方式,你先参考,如有问题请回复我。

操作步骤如下:
1、创建一个 PageReport 报表,并在报表资源管理器的参数节点下添加一个参数,设置信息如下图:


2、在报表资源管理器中的数据源节点下,创建名为 DataSource1 的数据源对象
3、在 DataSource1 下创建一个新的数据集
3.1 数据集-参数页面中添加一个新的数据集参数,设置信息如下


3.2 数据集-查询页面中设置以下信息,需要注意的是 Where 条件中的 产品ID=@ProductID的写法,@ProductID是与3.1中创建的数据集参数名称对应的


总结,链接 SQL Server 数据库时,参数设置方法不再用 ? ,而是以 @ 开始的参数名称。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
hbtx
论坛元老   /  发表于:2013-6-26 17:35:00
板凳
您好,试了好多次,总算试出Oracle是用:开始的参数名。现在简单传参可以了,但是还有个问题:
   我想设置一个隐藏变量,变量类型为Integer,多值的。一个参数一个值我用的是  Report.Document.Parameters[index].CurrentValue= 我要传的值,现在我想一个参数传入多个值怎么写呢?
我试过传入一个数组或者数列,但是都报错了。
回复 使用道具 举报
hbtx
论坛元老   /  发表于:2013-6-26 17:39:00
地板
还有个问题,就是从母报表钻取到子报表,能否把程序传给母报表的参数原样传给子报表呢?多值也一样。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2013-6-26 18:09:00
5#
回复 4楼hbtx的帖子

hbtx

我会在调查之后明天与你联系。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2013-6-28 18:47:00
6#
回复 4楼hbtx的帖子

hbtx 你好

这个需求,可以在子表中添加和主表一样的参数,然后在钻取链接参数中进行传递。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部