Access编程交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 活动
  • 关于

技巧

ACCESS数据库

启动/设置/选项/背景

修复/压缩

安全/加密/解密

快捷键

版本升级/其它等

数据表

命名方式/设计规范

表设计

查询

Sql语言基础

选择查询

更新查询

删除查询

追加查询

生成表查询

交叉表查询

SQL特定查询

查询参数

查询综合应用

界面/窗体/控件

标签

文本框

命令按钮

组合框/列表框

选项组/复选框/选项按钮

选项卡

子窗体

窗体本身/综合应用

其它

报表打印

报表设计

高级报表

模块/函数/VBA/API/系统

VBA基础

内置函数

调试/跟踪/Debug

模块/类模块

API/COM/系统相关

字符数字日期

网络通信游戏

加密解密安全

文件处理

经典算法

宏/菜单/工具栏/功能区

宏/脚本

菜单/工具栏

功能区/Ribbon

图表/图形/图像/多媒体

图表

图形/图像

音频

视频/动画

DAO/链接表/ADO/ADP

DAO/链接表/ODBC

ADO/RDO

ADP

ActiveX/第三方控件/插件

Treeview树控件

ListView列表控件

Toolbar工具栏控件

微软其它控件

Dbi-Tech

CodeJock

Grid++Report

FastReport

ComponentOne

加载项/插件/Addin

OFFICE集成/导入导出/交互

Excel导入导出/交互

Word导入导出/交互

PPT交互

Outlook控制/邮件

Text文本文件/INI/CSV

PDF/SWF/XML格式

CAD格式

Sharepoint/其它Office

SqlServer/其它数据库

表

视图

存储过程/触发器

函数

用户/权限/安全

调试/维护

SqlServer其它/综合

发布/打包/文档/帮助

开发版/运行时

打包/发布/部署

开发文档/帮助制作

Access完整行业系统

采购管理系统

销售管理系统

仓库管理系统

人力资源管理HRM

CRM管理系统

MRP/ERP管理系统

BRP/流程优化

其它管理系统

心得/经验/绝招
其它/杂项
Excel技巧

Excel应用与操作

Excel开发编程

Word技巧

Word应用与操作

Word开发编程

Outlook技巧

Outlook应用与操作

Outlook开发编程

热门文章

  • Grid++Report ..
  • 锐浪报表(Grid++Re..

最新文章

  • 锐浪报表(Grid++Re..
  • Grid++Report ..

联系方式

Access交流网(免费Access交流)

QQ:18449932 

网  址:www.access-cn.com

当前位置:首页 > 技巧 > ActiveX/第三方控件/插件 > Grid++Report
Grid++Report

锐浪报表(Grid++Report)的一些开发技巧

以下文章转自 rund11的专栏


一直以来,锐浪报表做的不错,尤其是适用于国内的状况。加上不是很满意rdlc的功能,查遍网络,很少有这方面的介绍。所以整理常用功能,以备使用。水平有限,大家根据自身情况来学习。


一、             套打技巧

(1)       扫描原件电子版作为报表背景

(2)       在报表上面依据背景画出控件位置

(3)       根据字段可以设计数据库和报表的连接进行自动大批量打印

二、             多表头

详见ppt

 

 

四、             子报表意义及说明

因为主报表只能定义一个数据连接,但是有时候我们要做多个查询,分别做几个报表是可以的,但是会显得比较乱,所以我们在主报表中添加一个或多个子报表来实现。

 

主要用途:

1、将多个不同的报表集中在一起打印,且每个报表的页面设置可以不一样,如纸张大小与纸张方向。

2、希望多个报表集中导出到一个文件。

3、实现在导出Excel时,将不同的报表分别导出在不同的工作表(sheet)中。设置子报表的“导出到新工作表”属性为“是”,这个子报表在导出Excel时将单独产生在一个新工作表中。

 

 

 

六、             主报表子报表参数关联

 

参数前边加上一个:号,select * from Customerswhere City=:City

见4d.子报表主子关联.grf

 

报表统计

报表要形成类似excel的统计类型也是可以的,首先一般都有”明细网格”,我们把想要设置的列设置为“自由格”,然后在自由格中插入“综合文字框(memoBox)”,在“综合文字框(memoBox)”完成统计。

 

4.折线图、二维码

 

折线图(其他类似,柱图、)

1.X轴y轴名字(必选)

2.图表标题(可选)

3.数据序列数(有几种数据)

4.数据组数(x轴数据列数目)

5.x轴(x轴标签、x轴刻度间隔、最小值、最大值)

6. y轴(y轴标签、y轴刻度间隔、最小值、最大值)

7.图表数据(所有数据)

 

实现方法:

1.建立图表,设置

private voidmyreport()

        {

            IGRChart pChartBar = Report.ControlByName("ChartBar").AsChart; //柱形图

            FillNormalValues(pChartBar);//填充值方法,见下

            SetCustomGraphFillColor(pChartBar);//颜色方法,参见chart例子,用处不大

 

            IGRChart pChartPie = Report.ControlByName("ChartPie").AsChart; //饼图

            FillNormalValues(pChartPie);

 

            IGRChart pChartScatter = Report.ControlByName("ChartScatter").AsChart;

            FillXYValues(pChartScatter); //随机散点图

 

            IGRChart pChartScatterLine = Report.ControlByName("ChartScatterLine").AsChart; //折线图

            FillXYValues2(pChartScatterLine);

        }

 

//向柱图、叠加柱图、连线图与饼图提供数据

        protected static void FillNormalValues(IGRChartpChart)

        {

           pChart.SeriesCount = 3;//数据序列数(有几种数据)

            pChart.GroupCount = 4;//数据组数(x轴数据列数目)

            //pChart.XAxisMinimum = 0;

            //pChart.XAxisMaximum = 60;

            //pChart.XAxisSpace = 15;

 

            pChart.set_SeriesLabel(0,"张三");

            pChart.set_SeriesLabel(1,"李四");

            pChart.set_SeriesLabel(2,"王五");

          

            pChart.set_GroupLabel(0,"一");

            pChart.set_GroupLabel(1,"二");

            pChart.set_GroupLabel(2,"三");

            pChart.set_GroupLabel(3,"四");

 

            pChart.set_Value(0,0, 1000);

            pChart.set_Value(0,1, 1200);

            pChart.set_Value(0,2, 1500);

            pChart.set_Value(0,3, 800);

 

            pChart.set_Value(1,0, 1500);

            pChart.set_Value(1,1, 1800);

            pChart.set_Value(1,2, 2000);

            pChart.set_Value(1,3, 1200);

 

            pChart.set_Value(2,0, 800);

            pChart.set_Value(2,1, 1000);

            pChart.set_Value(2,2, 700);

            pChart.set_Value(2,3, 500);

        }

 

//下面方法以随机数填充折线图,折线图采用下面的思路,双for循环读取数据库或者参数生成图表

//提供散点连线图的数据,产生随机坐标点数据,保持X值是递增的,并自定义XY轴刻度位置与显示文字

        protected static void FillXYValues2(IGRChartpChart)

        {

            Random MyRandom = newRandom();

 

            pChart.EmptyXYValue();

            for (short i=0;i<pChart.SeriesCount; ++i)

            {

                double x = 0;

                int DataCount = MyRandom.Next(30);

                for (short j=0;j<DataCount; ++j)

                {

                    x+= MyRandom.NextDouble() * 10;

                    double y = MyRandom.NextDouble() * 300;

                    pChart.AddXYValue(i,x, y);

                }

            }

 

            //设置纵坐标刻度文字

            pChart.EmptyYAxisText();

            pChart.AddYAxisText(0,"0");

            pChart.AddYAxisText(50,"50");

            pChart.AddYAxisText(100,"100");

            pChart.AddYAxisText(200,"200");

            pChart.AddYAxisText(300,"300");

            pChart.AddYAxisText(400, "400");

 

            //设置横坐标刻度文字

            pChart.EmptyXAxisText();

            pChart.AddXAxisText(0,"0");

            pChart.AddXAxisText(10,"10");

            pChart.AddXAxisText(30,"30");

            pChart.AddXAxisText(40,"40");

            pChart.AddXAxisText(60,"60");

            pChart.AddXAxisText(80,"80");

            pChart.AddXAxisText(100,"100");

        }

 

 

子表中应该定义同名的参数。子表中的参数会自动取主表中同名字段或参数的值。

子表中的字段不会自动从主表获取数据。

 

设置报表明细记录集的连接串与查询SQL
Report.DetailGrid.Recordset.ConnectionString ="...";
Report.DetailGrid.Recordset.QuerySQL = "...";

如何用代码设置正确的连接串:先在报表中用向导自动产生连接串,观察向导自动产生的连接串,然后就能明白如何用代码产生连接串了。向导自动产生的连接串一般比较长,中间包含了很多默认值项与空值项,这些项在用代码产生的连接串时可以省略掉,通过多次尝试就可以获取到最简洁的连接串。
Report.DetailGrid.Recordset.ConnectionString = yourBuildConnectionString;

用代码设置参数的数据(报表上已存在该参数)
Report.ParameterByName("Parameter1").AsString = "...";
Report.ParameterByName("Parameter1").AsBoolean = true;
Report.ParameterByName("Parameter1").AsDateTime = ...;
Report.ParameterByName("Parameter1").AsFloat = 9.78;
Report.ParameterByName("Parameter1").AsInteger = 95;

用代码设置部件框的数据(报表上已存在该部件)
Report.ControlByName("StaticBox1").AsStaticBox.Text= "...";
Report.ControlByName("MemoBox1").AsMemoBox.Text = "...";
Report.ControlByName("PictureBox1").AsPictureBox.LoadFromFile("%参数为图像文件的文件路径或URL%");
Report.ControlByName("Barcode1").AsBarcode.Text = "...";

用代码设置字段的值(报表上已存在该字段)
Report.DetailGrid.Recordset.Edit();  //准备修改当前记录的值
//或者: Report.DetailGrid.Recordset.Append();  //增加新记录,通常在 FetchRecord 事件中调用
Report.FieldByName("Field1").AsString = "...";
Report.FieldByName("Field2").AsBoolean = true;
Report.FieldByName("Field3").AsDateTime = ...;
Report.FieldByName("Field4").AsFloat = 9.78;
Report.FieldByName("Field5").AsInteger = 95;
Report.DetailGrid.Recordset.Post();
备注:在设置字段值之前,必须要调用 Edit 或 Append方法,最后要调用 Post 方法。如果是在 Edit 方法之后设置字符串类型的字段,必须要设置此字段的“长度(Length)”属性为非0。

设置打印相关参数
Report.Printer.PaperSize = ...;
Report.Printer.PaperName = ...;
Report.Printer.PaperWidth = ...;
Report.Printer.PaperLength = ...;
Report.Printer.PaperOrientation = ...;
Report.Printer.PrintDuplex = ...;
Report.Printer.LeftMargin = ...;
Report.Printer.RightMargin = ...;
Report.Printer.TopMargin = ...;
Report.Printer.BottomMargin = ...;
Report.Printer.PrinterName = ...;

设置报表中设计时页面设置相关参数
Report.DesignPaperSize = ...;
Report.DesignPaperName = ...;
Report.DesignPaperWidth = ...;
Report.DesignPaperLength = ...;
Report.DesignPaperOrientation = ...;
Report.DesignLeftMargin = ...;
Report.DesignRightMargin = ...;
Report.DesignTopMargin = ...;
Report.DesignBottomMargin = ...;

 


发布人:  
分享到:
点击次数:  更新时间:2016-09-27 10:19:49  【打印此页】  【关闭】
上一条:Access从2013版本开始(包括2016)取消了升迁Sqlserver功能,需要使用SSMA  下一条:Grid++Report 锐浪报表开发常见问题解答集锦



相关文章

  • • Grid++Report 锐浪报表开发常见问题解答集锦

热门文章

  • [2016-09-27] Grid++Report 锐浪报表开发常见问题解答集锦access数据库
  • [2016-09-27] 锐浪报表(Grid++Report)的一些开发技巧access数据库

热门产品

公司动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图

中山市天鸣科技发展有限公司 版权所有 1999-2023 粤ICP备10043721号

QQ:18449932

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2025  www.metinfo.cn