数据钻取

发布时间:2017/06/20 15:06 发布者:葡萄城

返回博客中心

数据钻取是指通点击指向其它报表的链接来跳转到该报表。在现代商业智能报表中,对交互式报表的需求越来越强烈,数据钻取就是交互式报表中最为常用功能之一。

什么是数据钻取?

数据钻取是指通点击指向其它报表的链接来跳转到该报表。在现代商业智能报表中,对交互式报表的需求越来越强烈,数据钻取就是交互式报表中最为常用功能之一。

为什么需要数据钻取?

常见的普通报表中数据关系繁杂,常常一整套报表中,包含有多张主从报表,此时多张报表之间的关系难以表示,报表的数据钻取功能很好的应对了这样的需求。使用数据钻取功能,能够简单的从主报表钻取到从报表中,不但方便了数据查看,而且帮助报表查阅者理清了报表之间的关系。

如何使用葡萄城报表实现数据钻取功能?

假设我们现在的整个组织结构如下图所示: 数据钻取-葡萄城报表

从以上数据来看,整个数据结构分为【部门】、【子部门】和【员工】,接下来我们将使用葡萄城报表实现以上数据所对应的钻取报表。

首先,我们创建显示部门信息的报表“Department.rdlx”,并要进行以下几步操作:

1、添加一个名为 ParentID ,默认值为 –1 的参数

2、添加数据源,对应的查询语句为:select * from department where ParentID= ?;

3、添加数据源参数,名为 Parameter1 , 对应的值为 “=[@ParentID]”

4、在部门ID数据文本框中增加数据钻取链接,并设置如图中的钻取参数

数据钻取-葡萄城报表

通过以上操作,我们就完成了从上级部门钻取到下级部门的全部操作,接下来我们将实现从子部门钻取到员工信息的操作。

创建名为 Employee.rdlx 的员工信息报表,并举行以下操作:

1、添加名为 ParentID 的报表参数

2、添加数据源参数,名为 Parameter1 ,值为“=[@ParentID]”

3、添加数据源查询语句 select * from Employee where DepartmentID = ?;

接下来我们要在部门报表中添加钻取到员工信息报表的钻取链接,我们选用的钻取链接控件还是“部门ID”文本框,但是,现在就遇到一个问题,部门ID文本框可能会根据数据钻取到子部门,如果没有子部门就钻取到员工信息报表,为了实现按条件钻取功能,我们在部门ID是在的位置再放置一个文本框,该文本框对应的钻取设置如下图所示:

数据钻取-葡萄城报表

接下来最重要的一步操作,我们需要根据数据源来显示以上两个完全重叠的文本框,设置如下

1、设置钻取到员工信息的文本框的 Visibility.Hidden 为 “=IIF( [HasSub] = 0,false,true)”

2、设置钻取到子部门信息的文本框的 Visibility.Hidden 为 “=IIF( [HasSub] = 0,false,true)”

最终运行结果如下图:

数据钻取-葡萄城报表

关于葡萄城报表

葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。

千万种报表,同一种选择!获知葡萄城报表更多详情,请访问如下网站:
了解报表开发控件:/developer/activereports
了解报表服务器:/solutions/reporting

关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网