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()只能用来确定特定数值列的平均 ...
随机推荐
- Mybatis执行sql(insert、update、delete)返回值问题
数据库:Mysql 在使用mybatis的过程中对执行sql的返回值产生疑问,顺手记录一下. 结论: insert: 插入n条记录,返回影响行数n.(n>=1,n为0时实际为插入失败) up ...
- JavaScript里面的居民们2-字符串
基于HTML,实现需求 按照HTML中按钮的描述以此实现功能 计算结果显示在 id 为 result 的 P 标签中 <!DOCTYPE html> <html> <he ...
- Docker 简单运用
Docker 帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点,容器和 VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离.虚拟机可能需要一分钟 ...
- 关于 class 的命名
class名称中只出现小写字符和破折号 使用有组织或目的明确的名称,不使用表现形式 基于最近的的父class 作为新class的前缀 使用 .js-* 来标识行为,并且不要将这些class包含到css ...
- andriod导入v4包导致的错误
最近升级android studio到版本3.0.1后,想要使用FragmentActivity这个类,导入v4包,发现R文件报错了,也就是找不到的意思. 如图:导包 此时选中v4包导进去. 确定之后 ...
- ajax post data 获取不到数据,注意content-type的设置post/get
因为之前一直用jQuery ajax get的方式传递参数, 默认没有设置过 contentType 的值. $.ajax({ url: "/yuanjin/jianxiang", ...
- 【Leetcode】【Medium】Maximum Subarray
Find the contiguous subarray within an array (containing at least one number) which has the largest ...
- 【Leetcode】【Easy】Reverse Linked List
题目: Reverse a singly linked list. 解题: 反转单链表,不再多介绍了. 如果会“先条件->定参数->确定不变式->验证后条件”的思维方法,一定会bug ...
- Python学习---重点模块之shelve
简单示例 import shelve f = shelve.open(r'shelve.txt') f['info'] = {'name':'ftl', 'age':23, 'sex': 'male' ...
- 贝叶斯网络(Bayesian network))简介(PRML第8.1节总结)概率图模型(Graphical models)
转:http://www.cnblogs.com/Dzhouqi/p/3204353.html 部分图为手写,由于本人字很丑,望见谅,只是想把PRML书的一些部分总结出来,给有需要的人看,希望能帮到一 ...