使用Grid++report开发报表功能

一、Grid++report

        1.Grid++Report概述

         Grid++Report 插件适用于开发 B/S 结构的网络报表系统,支持全部主流WEB浏览器,是软件开发人员开发 WEB 报表的最佳选择。

         支持 AASP、ASP.NET、JSP、PHP 等一切 WEB 软件开发技术。

         可以在浏览器中直接打印报表(非浏览器打印)与导出报表。

         Grid++report报表设计开发工具下载地址:http://www.rubylong.cn/Download.htm

         Grid++report Web报表(B/S报表)演示地址:http://www.rubylong.cn/WebReport/


二、报表开发过程

        1.开发 B/S 报表

         用 Grid++Report 插件开发 B/S 报表的过程主要包括:

         1)设计报表模板

         2)编程实现报表数据提供网页

         3)编辑报表展现网页

         4)部署报表系统到WEB服务器


三、具体开发过程

        1.设计报表模板

         1)下载并安装Grid++report报表设计工具:http://www.rubylong.cn/Download.htm

         2)设计一个会员资料的报表模板

               ①打开刚下载并安装好的Grid++Report 报表设计器。

               ②插入报表头:执行菜单“插入-〉报表头”,新插入的报表头显示在报表布局窗口中。

               ③插入一个静态框显示报表标题:执行菜单“插入-〉静态框”,用鼠标在报表头的显示区域拖放一个矩形区域,

                  一个新的静态框显示在拖放的矩形区域位置,点击新插入的静态框,当文字插入光标显示时,输入“会员资料”。

               ④插入报表尾:执行菜单“插入-〉报表尾”,新插入的报表尾显示在报表布局窗口中。

               ⑤插入明细网格:执行菜单“插入-〉明细网格”,新插入的报表尾显示在报表布局窗口中,结果如图一所示。

               ⑥自动生成标题行和内容行:在明细网格的工具栏上选择“设置数据源...”打开定义窗口,如图二所示,

                  点击“创建数据库连接串”,在这里是使用MySQL,继续选择“Microsoft OLE DB Provider for ODBC Drivers ”,

                  继续“下一步”,然后选择数据源名称,填写用户名和密码,最后测试连接;

                  完成数据库连接串配置后继续填写“数据库查询SQL”,在这里是“select * from gy_member”。

                (注意)如果没有安装ODBC For Mysql,可以到MySQL官网下载安装,

                  并且需要在“控制面板----管理工具----ODBC数据源”中添加MySQL支持,否则无法配置数据库连接。

               ⑦在明细网格的工具栏上选择“根据字段自动生成列”则可以完成自动生成标题行和内容行,结果如图三所示。

               

               

               

        2.JSON数据格式要求

        1)通过接口提供JSON格式的数据,数据格式参考要求如下(不能嵌套多层):

{
    "Detail": [
        {"ProductID": 2,"ProductName": "牛奶","UnitPrice": 15.2,"Quantity": 20,"Amount": 304},
        {"ProductID": 16,"ProductName": "饼干","UnitPrice": 13.9,"Quantity": 35,"Amount": 486.5},
        {"ProductID": 36,"ProductName": "鱿鱼","UnitPrice": 15.2,"Quantity": 25,"Amount": 380},
        {"ProductID": 59,"ProductName": "苏澳奶酪","UnitPrice": 44,"Quantity": 30,"Amount": 1320}
    ]
}

        2)设计的接口及提供的JSON数据:

       

        3.页面设计       

        1)页面编写report.jsp,需要引用Grid++report 6.0提供的插件,三个JS,CreateControl.js、GRInstall.js和GRUtility.js

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>会员资料报表</title>
    <script type="text/javascript" src="./js/report/CreateControl.js"></script>
    <script type="text/javascript" src="./js/report/GRInstall.js"></script>
    <script type="text/javascript" src="./js/report/GRUtility.js"></script>
    <style type="text/css">
        html,body {
            margin:0;
            height:100%;
        }
    </style>
    <script language="javascript" type="text/javascript">Install_InsertReport();</script>
</head>
<body>
  <script type="text/javascript">
	var Installed = Install_Detect();
	if ( Installed )
		CreateReport("Report");
  </script>
  <script type="text/javascript">
	    var Report = "<%=request.getParameter("report")%>";//获取传入的report参数,值为模板放置位置
	    if (Report == "null")
		Report = "";
	    else if (Report != "")
	        Report = "data/report/" + Report;
	    var Data = "<%=request.getParameter("data")%>";//获取JSON数据接口提供的数据
	    CreatePrintViewerEx("100%", "100%", Report, Data, true, "");
  </script> 
</body>
</html>

        2)通过打印按钮导航到report页面并传递两个参数,分别是report和data参数,

             report参数是报表模板的存放位置,data参数是JSON接口,以下是JS代码:

                

         4.报表结果

        1)报表结果显示(需要使用IE内核的浏览器,最好使用新版本的IE):

















        



  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Grid++Report是一款C/S与B/S集成报表工具,功能全面易学易用。C/S开发适用于VB.NET,C#,VB,VC,Delphi,BCB,VFP,易语言等。B/S开发适用于ASP.NET,ASP,PHP,JSP等,支持所有WEB服务器。 Grid++Report6.0版主要新增功能 ★引擎方面 1、增加了一个自由表格部件,可以灵活定义各种自由表格,具有单元格合并功能。 2、部件框增加边距设置,边框增加内层与阴影,虚线边框。 3、文字显示增加段间距、首字缩进与两端分散对齐。 4、分组报表可以按某个统计值的大小对分组项进行排序 5、数据源除了OLE DB外,增加XML、JSON与普通文本数据。 6、在编程接口中增加了很多应用函数,如数据压缩、数字格式化、日期时间解析与格式化、打印机与纸型枚举、文件选择对话框等。 7、其它杂项功能,根据多年收集的用户需求来增加与改进功能,如分组相关系统变量、图像旋转显示等。 ★设计器: 1、设计面板具有缩放设计功能。 2、将关联属性归类为组,方便在设计时集中设置与查看。 3、对象浏览窗口与属性窗口可以隐藏,方便在设计很宽的报表时增大设计面板的区域。 4、设计面板大小跟随明细网格总列宽来改变宽度,方便设计大宽度明细网格报表。 5、部件框锁定功能,被锁定的部件框不允许进行可视化拖放。 6、自动在分组头尾中增加统计框,默认为合计函数,并设置相应的对齐列。 7、数据源连接串可以为 XML 或 JSON 数据源,且可以自动生成字段。设计报表时数据源可连接的类型有:各种数据库、XML或JSON文件、产生XML或JSON的网络URL、EXCEL文件、TEXT文件。 8、设计器增加数据提供事件接口,在设计报表时可以用给报表加载自定义数据源。 ★打印与打印预览: 1、横向分页时,在数据不多的情况下,分页直接显示在本页,而不是在下一页。 2、在模板中可以保存默认打印机名称。 3、分组尾支持每页重复打印。 4、如果部件框跨页多次显示了,在新页中再次输出其上下边框。 5、提供编程接口枚举出Windows系统中安装的打印机,以及指定打印机支持的所有纸张类型。 ★查询显示: 1、没有明细网格的报表,背景图可以显示出来。 2、明细数据不多时,表格不会显示下部空白。 ★数据导出: 1、在导出Excel时,能用代码设置页边距等参数 2、在运行时对外观属性的改变可以反映到Excel导出。 ★图表: 1、重新设计图表接口,让图表可视化设计与编程控制更清晰简单。 2、支持更多图表类型,如百分比柱状图、垂直排列的柱图。 3、一个图表中可以混和显示多种不同类型的图形,如一个序列为柱图,另一个序列为曲线图。 4、Y轴可以显示双坐标轴,方便实现双轴柱状图等。 5、图例可以在下方显示,可以多栏显示。 6、增加图表数据记录集,图表数据直接从记录集或XML数据源加载,而不需用代码来加载图表数据。 7、图表方面还有很多细节方面的改进与增强,加强图表功能是本新版本的重要方面。 ★交叉表 1、多数据列交叉表可以将同一列产生的交叉列排列在一起。 2、在合计列中可以排除掉一些列不进行合计。 3、纵向交叉项目列中可以定义统计框或综合文字框表达式,在合计列中关联的字段自动求和,在项目列中关联字段为复制首笔值。 ★子报表: 1、子报表无数据可以自动隐藏。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值