ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求,作为专业的报表工具为全球超过 300,000 开发人员提供了全面的报表开发服务。

ActiveReports 报表控件V12版本已于近日正式发布了,为帮助广大报表开发人员更加深入的了解V12版本的新特性,我们将推出《ActiveReports V12新特性》系列文章。本文是系列的第一篇文章 -- 无需ETL处理,即可实现跨数据源分析数据。

在大型企业中,可能会同时应用多个业务数据系统来存储数据,如CRM 存储客户信息,SCM存储销售订单信息,ERP存储企业订单,资本等信息,如果需要汇总分析多方数据,技术人员需要先将所有数据整合到一个数据库中,这个中间需要处理很多跨平台的数据兼容性及关联性,在数据整合完毕之后,还需要设计布局合理的报表来展示和挖掘整合的业务数据。如此一来发出一份业务分析报告,是非常慢的。如果可以直接根据设计报表,同时展示多个数据源,且能够解决复杂样式,就可以解决大问题了。

特殊样式设置常常会用到控件嵌套,而控件嵌套最大的限制是同时只能设定一个数据集,只能在控件里面嵌套子报表,而嵌套子报表,面临着要设计多个报表文件,不便于管理,而且样式调整不容易,容易错乱。常常需要多个文件调整对比。

ActiveReports 12 支持多数据控件嵌套,将各控件的优点结合,如矩表嵌入表格中,可使得表格具有动态列的效果,如果将图表嵌入表格中,可为表格嵌入可视化的效果。 且在实现数据嵌套过程,每一个数据控件都可以绑定独立的数据集,而且在嵌套过程中,不同数据集既可以保持独立,也可以通过设置DataSetParameters  进行关联。可谓将嵌套功能做到极致。数据控件嵌套+多数据集支持=无限样式。

  1. 支持范围 页面/RDL报表
  2. 可用控件矩表,列表,图表,带状列表,表格,迷你图

今天我们就来学习,如何使用ActiveReports 进行控件嵌套,并进行数据关联。

1. 新建RDL/页面报表

2. 添加数据源并创建数据集

注:这个数据集中间存在关联关系。

创建【产品】数据集
select *from dbo.产品
创建【订单】数据集
select dbo.订单.*, dbo.订单明细.产品ID
from dbo.订单 inner join dbo.订单明细 on dbo.订单.订单ID = dbo.订单明细.订单ID
创建【客户】数据集
select *from dbo.客户
产品 与订单 :产品ID 关联 订单与客户:客户ID关联

3. 添加表格 Table1,选择【产品】数据集

效果图:

4. 添加Table 2,设置数据集【订单】

效果图

5. 添加Table3 选择【客户】数据集

效果图

6. 去除 Table3 的表尾行,选中【表格详细数据行】,右键单击,取消选中【表尾】,删除多余列

效果图

7. 开始嵌套

注:嵌套前最好先预留好,父表格的尺寸。

7.1 将Table3 嵌套到Table2 的表格【详细数据行】中

7.2  整体调整Table2,将Table2嵌套至 Table1中

此时预览,会发现三个表格确实都加载了不同的数据集,但确各不相关。

我们只是刚把嵌套完成,还未设置数据关联。

8.设置数据关联

8.1 设置表格的Filters属性

Table1【产品表】 -产品ID--Table2【订单表】-客户ID- Table3【客户表】

因此我们需要在Table 2 上面添加 Filter属性,设置[产品ID]=[产品ID];

8.1.1 选中Table2,点击【属性对话框】

8.1.2 同样设置 Table 3 过滤属性

预览:

8.2  使用 DataSetParameter 实现数据关联。

DataSetParameter 和创建过滤器都可以实现数据关联,我们可以根据自己的应用场景来灵活选择任意一种方式。

选中Table2 设置DataSetParameters 属性

8.2.1 设置数据集 DataSet2

添加参数后,修改查询语句:

select dbo.订单.*, dbo.订单明细.产品IDfrom dbo.订单 inner join dbo.订单明细 on dbo.订单.订单ID = dbo.订单明细.订单IDwhere 产品ID=@Parameter1

8.2.2 设置Table3 的DataSetParameters 属性

设置DataSet3 的查询语句

select *from dbo.客户where 客户ID=@Parameter1

控件嵌套在设计复杂报表样式时应用非常广泛,如下图,实现表格与图表控件嵌套。

定制培训加量全心送!凡在2017年12月31日之前,购买葡萄城控件团队授权和企业授权的用户,不仅可以享受到优惠的价格,还可获赠葡萄城技术专家根据客户项目需求提供的定制培训服务。老客户推荐新客户成单,也将获得“客户推荐双重感恩礼”。

点击此处,了解更多。

转载请注明出自:葡萄城报表

关于葡萄城报表

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

千万种报表,同一种选择!获知葡萄城报表更多详情,请访问如下网站:
了解报表开发控件:http://www.gcpowertools.com.cn/products/activereports_overview.htm
了解报表服务器:http://www.grapecity.com.cn/enterprise-solutions/activereports_server/

ActiveReports 报表控件V12新特性 -- 无需ETL处理,即可实现跨数据源分析数据的更多相关文章

  1. ActiveReports 报表控件V12新特性 -- 页面报表新增子报表

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  2. ActiveReports 报表控件V12新特性 -- RPX报表转换为RDL报表

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  3. ActiveReports 报表控件V12新特性 -- 可定制的安装设置

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  4. ActiveReports 报表控件V12新特性 -- 新增矩表的RepeatToFill属性

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  5. ActiveReports 报表控件V12新特性 -- 文本框和标签控件的浓缩

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  6. ActiveReports 报表控件V12新特性 -- 新增JSON和CSV导出

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  7. ActiveReports报表控件V11 SP1版本正式发布!

    无需编码,即可轻松搞定商业报表六大需求的 ActiveReports 报表控件,于今日宣布正式发布 V11 SP1 版本,并在其 官方网站 提供免费下载. V11 版本是 ActiveReports ...

  8. ActiveReports 报表控件官方中文入门教程 (2)-创建、数据源、浏览以及发布

    本篇文章将阐述首次使用 ActiveReports 报表控件 的方法,包括添加报表文件.绑定数据源以及如何发布报表等内容. ActiveReports 报表控件官方中文入门教程 (1)-安装.激活以及 ...

  9. 在ASP.NET MVC 中使用ActiveReports报表控件

    随着MVC模式的广泛运用,对Web应用系统的开发带来了巨大的影响,我们好像又回到了原来的ASP时代,视乎这是一种后退而不是一种进步,不过MVC模式给我们带来的影响不仅限于我们所看到的这一点..MVC看 ...

随机推荐

  1. Fiddler抓包连接失败502的解决方法

    本篇用户记录,在用Fiddler遇到过的坑,首先, 先上图,遇到的问题,提示主机连接失败.只是打开Fiddler,不会报这个问题,只有当Fiddler和火狐浏览器一起启动的时候,才会报这个错. 尝试去 ...

  2. vue教程2-04 vue实例简单方法

    vue教程2-04 vue实例简单方法 vue实例简单方法: vm.$el -> 就是元素 vm.$data -> 就是data <!DOCTYPE html> <htm ...

  3. Win7上Spark WordCount运行过程及异常

    WordCount.Scala代码如下: package com.husor.Spark /** * Created by huxiu on 2014/11/26. */ import org.apa ...

  4. c++之菱形继承问题

    昨天面试问了菱形继承的问题,回答的稀巴烂,回来赶快好好学习一波!!!!! 菱形继承如下图: 上一段代码: #include<bits/stdc++.h> using namespace s ...

  5. 手把手教你封装 Vue 组件并使用 NPM 发布

    Vue 开发插件 我们可以先查看Vue的插件的开发规范 我们开发的之后期望的结果是支持 import.require 或者直接使用 script 标签的形式引入,就像这样: ps: 这里注意一下包的名 ...

  6. 全网最详细的Windows系统里Oracle 11g R2 Client客户端(64bit)安装后的初步使用(图文详解)

    不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Client(64bit)的下载与安装(图文详解) 命令行方式测试安装是否成功 1)   打开服务(cmd— ...

  7. linux centos挂载数据盘教程

    一.备份/home/liying目录数据前提条件:电脑重启下,保证服务关闭,以免进程影响操作 a.新建backup目录#cd /#mkdir backup b.把/home/liying/目录下的数据 ...

  8. Spring MVC的Controller统一异常处理:HandlerExceptionResolver

    a.针对500异常的统一处理1.实现HandlerExceptionResolver,重写resolveException方法 package com.liying.mango.common.inte ...

  9. Windows x86 下的 静态代码混淆

    0x00  前言 静态反汇编之王,毫无疑问就是Ida pro,大大降低了反汇编工作的门槛,尤其是出色的“F5插件”Hex-Rays可以将汇编代码还原成类似于C语言的伪代码,大大提高了可读性.但个人觉得 ...

  10. JS脚本动态给元素/控件添加事件

    最近突然要用到JS脚本动态给元素添加事件.如TextBox的onclick事件.但有的onclick事件原先已经定义了相应代码!这里又不能替代原有方法,而JS脚本里面有个方法可以给控件在原有事件的基础 ...