FastReport.net分组排序、打印顺序、分页、函数使用语法、数据块编辑
本人使用的是FastReport.net1.0版,不涉及到任何代码,只是在FastReport中对打印模板的属性进行调整
1.设置打印顺序需要注意的属性
1)分组页眉中有个属性叫“condition”,这个属性是用来设置打印内容的分组条件,也就是指定按照某一列数据分组,然后打印出来
于此同时,还可以指定这个分组的顺序,有个“SortOrder”属性,里面有“None”,“Ascending”,“Descending”三个值

当SortOrder为Ascending时,FastReport会对分组的数据,以组为单位进行正序排列并打印
当SortOrder为Descending时,FastReport会对分组的数据,以组为单位进行倒序排列并打印
当SortOrder为None时,FastReport不会再对数据进行排序,会按照传进来的数据列表顺序打印出来
一般情况下,如果业务简单,可以直接设置Condition和SortOrder来完成排序,如果复杂的话,建议还是将SortOrder设为None,然后自己在代码逻辑里把数据排好序后再传入FastReport
2.设置打印分页时需要注意的要点
跟分页相关的属性主要有以下几个“KeepTogether”、“StattNewPage”

有时候设置的页高度“PageHeight”过矮,也会造成分页出现问题

3.FastReport中的系统函数使用语法
如第一点中提到的Condition,有时候我们可能需要借助FastReport自带的函数对数据做一些简单的处理
使用这些函数的语法举例如下:
[ET_ITEM.PICK_SORT]+Substring([ET_ITEM.PICK_ORDER],1,19)
其中[ET_ITEM.PICK_SORT]和[ET_ITEM.PICK_ORDER]都是一个普通的数据列,Substring(s,startindex,length)则是FastReport自带的函数
4.FastReport中数据块编辑
有时候,我们添加了一个数据块区域,并在数据块下添加了多级子数据块区域,这时,如果想在某一层数据块区域的尾部扩展一块区域的话,可能一时找不到添加的位置
实际可在菜单Report——》Configure Bands中,对所选区域进行右键,添加一个Footer即可达到目的

5.数据文本多行合并
数据块有多行数据的时候,有时候我们希望做到相同的数据行自动合并,其实要做到很简单,只需要设置文本控件的一个行为属性,如下图

将Text控件的Duplicates属性设为Merge就可以了,再打印出来的话就会自动合并相同行,效果如图:

FastReport.net分组排序、打印顺序、分页、函数使用语法、数据块编辑的更多相关文章
- MYSQL实现分组排序并取组内第一条数据
一.需要实现分组排序并且取组内状态优先级最高的数据 有一张这样的数据表, 需求是根据error_type分组然后取status最小的第一条数据 第一种写法: select t.* from ( sel ...
- oracle 分组排序函数
项目开发中,我们有时会碰到需要分组排序来解决问题的情况:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示例和 ...
- oracle中分组排序函数用法 - 转
项目开发中,我们有时会碰到需要分组排序来解决问题的情况,如:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示 ...
- SQL分组排序后取每组最新一条数据的另一种思路
在hibernate框架和mysql.oracle两种数据库兼容的项目中实现查询每个id最新更新的一条数据. 之前工作中一直用的mybatis+oracle数据库这种,一般写这类分组排序取每组最新一条 ...
- 写2个线程,一个打印1-52,一个打印A-Z,打印顺序是12A34B。。。(采用同步代码块和同步方法两种同步方法)
1.同步方法 package Synchronized; /************************************同步方法****************************** ...
- 分组排序函数——row_number()
1.MySQL8.0以上版本 用法1:无分组排序 Row_number() OVER(ORDER BY 字段 DESC)例如:Row_number() OVER(ORDER BY 学生成绩 DESC) ...
- mongodb group操作 以及管道 aggregate 分组排序分页
分组获取数据: db.express_info.group({ "key":{"express_code":true}, "initial" ...
- hive 排序 分组计数后排序 几种不同函数的效果
[转至:http://blackproof.iteye.com/blog/2164260] 总结: 三个分析函数都是按照col1分组内从1开始排序 (假设4个数,第2和第3个数据相同) row_ ...
- SQL必知必会 -------- 聚集函数、分组排序
聚集函数 1.AVG()函数 输入:SELECT AVG(prod_price) AS avg_price FROM Products 输出: 警告:只用于单个列AVG()只能用来确定特定数值列的平均 ...
随机推荐
- servlet-mapping元素及其子元素
<servlet-mapping>元素在Servlet和URL样式之间定义一个映射.它包含了两个子元素<servlet- name>和<url-pattern>,& ...
- c#之静态构造函数和单例模式
1.静态构造函数:在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类 public class A { ; : private static A instance_; publi ...
- js中map和python中的map
js 中的map: 由于map()方法定义在JavaScript的Array中,我们调用Array的map()方法,传入我们自己的函数,就得到了一个新的Array作为结果: function pow( ...
- JavaScript 二维数组排列组合2
<html> <head> <title>二维数组排列组合</title> </head> <body> <div id= ...
- JavaScript练习笔记整理·1 - 6.23
练习平台Codewars地址:https://www.codewars.com/ 欢迎和大家一起来讨论~╭( ・ㅂ・)و ̑̑ 基础练习(1): 我的解答为: class SmallestIn ...
- 06_zookeeper原生Java API使用
[Zookeeper构造方法概述] /** * 客户端和zk服务端的连接是一个异步的过程 * 当连接成功后,客户端会收到一个watch通知 * * ZooKeeper(String connectSt ...
- 《一马当先 O2O创业真人秀》阿里云创客+项目提交报名中
传统行业与互联网的相互融合,线上与线下的互通,正在掀起一股“互联网+”新风潮和创业热潮.支付宝钱包.快的打车.淘点点……这些耳熟能详的应用早已成为人们生活的一部分.而越来越多的“互联网+”创新项目,将 ...
- 创建线程后马上CloseHandle(threadhandle)起什么作用
原文:http://www.cnblogs.com/eddyshn/archive/2010/04/14/1711674.html HANDLE threadhandle = CreateThread ...
- Java在Web开发语言上败给了PHP(转)
PHP的主要语言开发者之一.Zend公司的创始人之一Andi Gutmans最近在blog中直言不讳地批评了Java语言.他指出,目前Java厂商试图在JVM上提供动态语言实现的路子根本不对,Java ...
- QT 定时执行某个函数,隐藏某个控件
QTimer::singleShot(3000, this, SLOT(slotHideFinishedLabel())); // 这里是一个3秒定时器, 且只执行一次. #include " ...