当前位置: 首页 > news >正文

ActiveReports 报表应用教程 (3)---图表报表

ActiveReports 报表应用教程 (3)---图表报表
原文: ActiveReports 报表应用教程 (3)---图表报表

ActiveReports 的图表控件支持绝大多数常用的二维和三维图表类型,包括XY图表和财务图表。通过使用图表控件的定制功能,如修改坐标轴、图注、图例等,用户可以创建任何其所需要的图表效果。用户还可以通过代码把定义好的图表输出为多种图像格式。 本文将演示如何在 ActivReports 中实现图文混淆报表。

我们将要实现的是2011年度各类产品销量统计报表,其中图表按照产品类别统计销量,表格按照类别和月份统计销售量。

 

1、创建报表文件

在 ASP.ENT 应用程序中添加一个名为 rptSalesByCategory.rdlx 的页面报表(PageReport)文件,使用的报表模板为“ActiveReports 7 页面报表”,创建完成之后通过 VS 的以下菜单完成报表转换操作:

ActiveReports 报表功能展示 添加页面报表

 

2、为 rptSalesByCategory 报表添加数据源

通过 VS2010 “菜单” –> “其他窗口” –> “报表资源管理器 V7 ” 打开 ActiveReports 报表资源管理器,在数据源节点上鼠标右键,并选择“添加数据源”。在出现的报表数据源对话框中,输入下图所示的信息:

ActiveReports 报表功能展示 页面报表数据源

2.1、在新创建的 NWind_CHS 数据源节点上鼠标右键,并选择添加数据集,在出现的数据集对话框中输入一下信息:

常规选项卡 –> 名称:Sales

查询选项卡 –> 查询:


    
SELECT 类别.类别名称,t.* FROM (
SELECT 类别.类别ID,SUM(订单明细.数量) AS 销售量 FROM (( 订单 
 INNER JOIN 订单明细 ON 订单.订单ID = 订单明细.订单ID)
 INNER JOIN 产品 ON 订单明细.产品ID = 产品.产品ID)
 INNER JOIN 类别 ON 产品.类别ID = 类别.类别ID
 WHERE DATEDIFF("yyyy",订单.订购日期,'2011-01-01') = 0
 GROUP BY 类别.类别ID, 类别.类别名称
 ORDER BY 类别.类别ID, 类别.类别名称 ) as t
INNER JOIN 类别 ON t.类别ID = 类别.类别ID

2.2、在 NWind_CHS 数据源节点上鼠标右键,并选择添加数据集,在出现的数据集对话框中输入一下信息:

常规选项卡 –> 名称:SaleDetails

查询选项卡 –> 查询:


    
SELECT 类别.类别名称,t.* FROM (
SELECT DATEPART("m",订单.订购日期) AS 订购月,类别.类别ID,SUM(订单明细.数量) AS 销售量 FROM (( 订单 
 INNER JOIN 订单明细 ON 订单.订单ID = 订单明细.订单ID)
 INNER JOIN 产品 ON 订单明细.产品ID = 产品.产品ID)
 INNER JOIN 类别 ON 产品.类别ID = 类别.类别ID
 WHERE DATEDIFF("yyyy",订单.订购日期,'2011-01-01') = 0
 GROUP BY DATEPART("m",订单.订购日期),类别.类别ID, 类别.类别名称
 ORDER BY DATEPART("m",订单.订购日期),类别.类别ID, 类别.类别名称 ) as t
INNER JOIN 类别 ON t.类别ID = 类别.类别ID
 

3、创建图表对象

从 VS 工具箱中将 Chart 控件添加到报表设计界面,选中 Chart 后在属性窗口中的命令区域会显示 Chart 相关的操作命令,我们点击【图表数据…】命链接,此时会显示图表数据对话框,按照以下截图完成 Chart 的设置:

3.1 图表数据-常规设置

名称:
Chart1

工具提示:
2011年度各类产品销售量统计表

数据集名称:
Sales

ActiveReports 报表功能展示 图表数据属性设置对话框

3.2、图表数据-系列值

系列标签:
销售量

值:
=Sum([销售量])

ActiveReports 报表功能展示 图表数据属性设置对话框

3.3、图表数据-类别分组

分组-表达式:
=[类别名称]

标签:
=[类别名称]

ActiveReports 报表功能展示 图表数据属性设置对话框

 

4、创建数据明细表

我们将使用矩阵控件 Matrix 来显示每月,每类产品的销售量,从 VS 工具箱中将矩阵控件 Matrix 添加到报表设计界面,并选择矩阵控件,此时在属性窗口中的命令区域会显示【属性对话框…】命令链接,点击该链接。

4.1、矩阵-常规设置

数据集名称:
SaleDetails

ActiveReports 报表功能展示 明细报表

4.2、矩阵-行分组

常规-分组-表达式:
=[订购月]

排序-表达式:
=[订购月]

ActiveReports 报表功能展示 矩阵控件属性设置对话框

4.3、矩阵-列分组

常规-分组-表达式:
=[类别名称]

ActiveReports 报表功能展示 矩阵控件属性设置对话框

4.4、我们得到的最终设计效果和运行效果如下图所示:

ActiveReports 报表功能展示

 

5、运行程序

ActiveReports 报表功能展示 图表报表

 

源码下载地址: http://www.gcpowertools.com.cn/products/activereports_demo.htm

posted on 2014-12-08 20:36 NET未来之路 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/4151895.html

相关文章:

  • 简单定义工程架构
  • IdentityServer4[1]:开篇
  • 小码哥iOS学习笔记第十天: __block和block内存管理
  • Java获取电脑IP、MAC、各种版本
  • Mysql索引分析:适合建索引?不适合建索引?【转】
  • scrapy中间件源码分析及常用中间件大全
  • [蓝桥] 算法提高 简单加法
  • WEB FARM NLB TEST
  • 第二周
  • Availability Check Control (Checking Rule )
  • 单变量线性回归
  • Json对象与Json字符串互转
  • P2278 操作系统
  • 在国内最好的一个垂直类的“慕课”
  • ECOUX 姚梓鹏:资本寒冬下我开了一家设计公司 | 点评家
  • [iOS]Core Data浅析一 -- 启用Core Data
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 345-反转字符串中的元音字母
  • Apache Zeppelin在Apache Trafodion上的可视化
  • Codepen 每日精选(2018-3-25)
  • Date型的使用
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • JS 面试题总结
  • k8s 面向应用开发者的基础命令
  • Linux下的乱码问题
  • python 装饰器(一)
  • React-Native - 收藏集 - 掘金
  • 百度小程序遇到的问题
  • 订阅Forge Viewer所有的事件
  • 关于springcloud Gateway中的限流
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 项目实战-Api的解决方案
  • 硬币翻转问题,区间操作
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 整理一些计算机基础知识!
  • ​卜东波研究员:高观点下的少儿计算思维
  • # Apache SeaTunnel 究竟是什么?
  • #pragma multi_compile #pragma shader_feature
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (转)linux下的时间函数使用
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .Net Winform开发笔记(一)
  • .net 反编译_.net反编译的相关问题
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .net开发时的诡异问题,button的onclick事件无效
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • @ConditionalOnProperty注解使用说明
  • [ 渗透工具篇 ] 一篇文章让你掌握神奇的shuize -- 信息收集自动化工具
  • [C#] 基于 yield 语句的迭代器逻辑懒执行
  • [C#]手把手教你打造Socket的TCP通讯连接(一)