本人使用的是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分组排序、打印顺序、分页、函数使用语法、数据块编辑的更多相关文章

  1. MYSQL实现分组排序并取组内第一条数据

    一.需要实现分组排序并且取组内状态优先级最高的数据 有一张这样的数据表, 需求是根据error_type分组然后取status最小的第一条数据 第一种写法: select t.* from ( sel ...

  2. oracle 分组排序函数

    项目开发中,我们有时会碰到需要分组排序来解决问题的情况:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示例和 ...

  3. oracle中分组排序函数用法 - 转

    项目开发中,我们有时会碰到需要分组排序来解决问题的情况,如:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示 ...

  4. SQL分组排序后取每组最新一条数据的另一种思路

    在hibernate框架和mysql.oracle两种数据库兼容的项目中实现查询每个id最新更新的一条数据. 之前工作中一直用的mybatis+oracle数据库这种,一般写这类分组排序取每组最新一条 ...

  5. 写2个线程,一个打印1-52,一个打印A-Z,打印顺序是12A34B。。。(采用同步代码块和同步方法两种同步方法)

    1.同步方法 package Synchronized; /************************************同步方法****************************** ...

  6. 分组排序函数——row_number()

    1.MySQL8.0以上版本 用法1:无分组排序 Row_number() OVER(ORDER BY 字段 DESC)例如:Row_number() OVER(ORDER BY 学生成绩 DESC) ...

  7. mongodb group操作 以及管道 aggregate 分组排序分页

    分组获取数据: db.express_info.group({ "key":{"express_code":true}, "initial" ...

  8. hive 排序 分组计数后排序 几种不同函数的效果

    [转至:http://blackproof.iteye.com/blog/2164260] 总结: 三个分析函数都是按照col1分组内从1开始排序 (假设4个数,第2和第3个数据相同)    row_ ...

  9. SQL必知必会 -------- 聚集函数、分组排序

    聚集函数 1.AVG()函数 输入:SELECT AVG(prod_price) AS avg_price FROM Products 输出: 警告:只用于单个列AVG()只能用来确定特定数值列的平均 ...

随机推荐

  1. AtomicInteger关键字

    validate 关键字可以保证多线程之间的可见性,但是不能保证原子操作.(需要了解java内存模型jmm) package com.cn.test.thread; public class Vola ...

  2. iview中render函数监听事件

    iview的table中添加datepicker在组件中嵌套组件,如果需要监听子组件的自定义事件,应该使用render中的on:{ 'on-change' () => { console.log ...

  3. Scrapy安装教程 pip 或 conda 两种安装方法.

      cmd: pip -V    查看pip版本 pip install --upgrade pip        升级最高版本 https://sourceforge.net/projects/py ...

  4. MySQL数据库(3)----设置和使用自定义变量

    MySQL支持定义自己的变量.这些变量可以被设置为查询结果,这使我们可以方便地把一些值存储起来供今后查询使用. ; +-----------------+ | @HisName:= name | +- ...

  5. 03_Adaptive注解

    [Adaptive注解] package com.alibaba.dubbo.common.extension; import com.alibaba.dubbo.common.URL; import ...

  6. vs2010开发activex(MFC)控件/ie插件(一)

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/50782904  vs2010开发activex(MFC)控件:      第一步:生成ac ...

  7. 关于派生类访问基类对象的保护变量的问题 --Coursera

    https://class.coursera.org/pkupop-001/forum/thread?thread_id=350   郭天魁· 6 months ago 在课件中我们知道如下程序是不能 ...

  8. Process.start: how to get the output?

    1: Synchronous example static void runCommand() { Process process = new Process(); process.StartInfo ...

  9. VMWARE里安装时出现'SMBus Host Controller not enabled'

    在虚拟机上运行Linux内核版本为4.7或以上的系统都在安装过程中或在启动时会因为加载intel_powerclamp驱动而导致崩溃.解决办法:1.在启动Ubuntu的时候按住左Shift键:2.Ub ...

  10. Python+Selenium2自动化测试之IE、chrome浏览器启动

    构建Python+Selenium2自动化测试环境完成之后,就需要测试支持python的selenium的版本是否都支持在不同浏览器上运行,当前我们分别在三个最通用的浏览器上通过脚本来测试. 1.在I ...