finereport设计器的seq()公式
finereport设计器的seq()公式
Finereport设计器中的seq()公式可以用来生成序列号,有多种使用方法,可以根据需要自由选择。
一、生成基本序列号
最简单的用法是,把seq()公式放在文本框中,每出现一次该文本框,序列号就会加1。比如,在表格中添加一列,将该公式放在文本框中,就可以轻松实现自动编号(注意,只有在预览或生成报表时才会正常显示,设计器中无法正确显示)。
二、生成含前缀的序列号
如果需要在序列号前添加特定前缀,可以在seq()公式中添加参数。例如,seq("NO-0000")的结果就是NO-0001、NO-0002、依次递增。如果要去掉前缀,只需改为seq("0000")即可。
三、生成分组排序序列号
有时需要在报表中分组显示内容,并在每组中对内容进行排序,同时对每组中的单位进行编号。这时可以利用Finereport设计器中的高级功能,在设置分组后,在序列号公式中加入分组条件,实现分组排序编号。例如,核算科目凭证金额分组排序表中,根据会计科目名称、科目编码、凭证号三个字段进行分组排序,使用序列号公式为:seq(if($V{SUBJECT_NAME}.equals($V{SUBJECT_NAME_COUNT}),"",($V{SUBJECT_NAME_COUNT} =$V{SUBJECT_NAME_COUNT}+1)))。其中,$V{SUBJECT_NAME}为当前行的科目名称,$V{SUBJECT_NAME_COUNT}为已经确定的科目个数,当一组中的科目名称和$V{SUBJECT_NAME_COUNT}相等时,表示该科目已经编号完成。
四、生成复杂多变的序列号
有时需要根据一定的规则生成特定的序列号,需要使用多个参数、多个公式进行计算。例如,需要生成类似AAA001、AAA002、BBB002、BBB003的序列号,可以使用if函数对每个不同的前缀进行判断,然后用seq函数进行编号。
以上是Finereport设计器中seq()公式的简要介绍,需要根据不同需求进行灵活应用,具体使
用方式还需根据实际情况进行调整。分组名称

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。