【套打】数据表控件介绍
数据表是最主要的展示数据的组件。数据表具有分组、统计以及循环展示数据的功能。
结构
数据表是一种表格,组成就是行、列、单元格。数据表的主要功能都集中在行和单元格上,数据表的行分为3种:普通行、分组行、数据行。
(1)普通行:主要作用是用来做表头(尾)或报表头(尾),可以在其单元格内输入文本、绑定字段、或设置为统计字段,对所有数据进行总计。普通行可以设置为“每页出现”。普通行在导航栏中的报表结构树中用如下图标以及文字来表示:
(2)分组行:用做于显示分组信息,可以在其单元格内输入文本、绑定字段、或设置为统计字段,此时统计字段的功能是对分组内的数据进行统计。
分组行又分为分组头行和尾行,分别位于数据行的上面和下面,每个分组至少有一对分组头尾行,如果不需要显示出来,只需设置行属性为“不打印”即可。一个分组也可以有多个分组行,通过插入行的操作增加分组行。分组的层次关系可以通过数据表左边的浮动的结构图来展示,如下图,我们用不同的颜色标示了功能,白色的行为数据行,橘黄色的为一个分组的2个分组行,蓝色的为最外层分组的3个分组行。可以看出每个分组在结构图中都有一条黑线来连接起来表示属于同一个分组。
分组行可以设置为“每页出现”。分组行和数据行之间、分组行之间不可插入普通行。分组行在导航栏中的报表结构树中用如下图标以及文字来表示:
(3)数据行:数据行是用来循环展示数据,例如可以用来展示分录行或明细行,是数据表中最重要的行。每个数据表里有只且仅有一行数据行,不能删除也不能增加,如果不想显示数据行,只需设置行属性为“不打印”即可。
数据行属性中可以设置为报表型和套打型2种类型。如下图,报表型即为不限制一页打多少行数据,根据实际的数据量以及可打印的空间由执行引擎来决定一页打多少行,此时也可以设置为“行高自适应”。套打型即为设置每页固定打多少行,例如我们做凭证时可以设置为每页打8行,即“每页重复次数”为8,当一个凭证的分录例如有14行,则会打2页,第一页打8行,第二页打6行数据和2行空行。
(4)单元格:单元格的类型有文本、字段、统计、运算以及容器。
“文本”类型指单元格内容为文本内容,直接输入文字即可。“字段”类型指单元格内容来源于绑定字段。“容器”类型指单元格可以作为容器嵌套放入除数据表以外的其他控件。
“统计”类型是指单元格具有统计功能(注:该类型对于数据行中的单元格无效)。统计方法目前有5种:求和、平均值、最大值、最小值、计数。统计范围又可分为以下4种:
分组小计 — 统计本分组内的数据,如果是普通行中的单元格,则该统计即为总计所有数据。“分组结束才显示分组小计”此选项适用于套打型,勾选上时,当一份单据有多页时,总计数只在最后一张中打印出来,前面页中不打印,但行存在。
区域统计 — 统计当前页内本分组内的所有数据,如果是普通行中的单元格,则该统计即为统计本页的所有数据。
累计 — 累计当前页前所有页加当前页内本分组内的所有数据,如果是普通行中的单元格,则该统计即为累计从分组开始到当前的所有数据。
混合 — 即先进行分组内每页统计,最后一页显示整个分组的统计。
概念
(1)每页出现:普通行、分组行的属性,设置了此属性,行会在每页都打印,常用于每页都要打印表头(尾)或报表头(尾)的需求。
(2)行高自适应:数据行的属性,设置了此属性,行的高度会根据内容的多少而变化,设计时行的高度是最小高度。
功能
这里的功能都可以在菜单〖表格〗中找到。
(1)数据表向导:
以向导的方式快速实现数据表的分组、统计以及字段布局。向导一共四步。
第一步,选择数据表绑定的数据源:
第二步,选择数据表中数据行中所需要打印的字段,例如凭证中分录行里需要打印的字段,如下图:
如不需要分组和统计,到这一步就可以点“完成”按钮了。此时,数据表会生成一个表头(一行普通行)和分录信息(数据行),如下图:
第三步,选择分组依据,如下图:
这一步也可以不设置,按下一步去设置统计字段,此时数据表中会在数据行下面添加一行普通行,在被计算的列对应位置生成统计字段,如下图:
第四步,设置统计字段,如下图:
可以选择总计字段也可以选择每个分组里的汇总字段,每个统计字段都可以修改属性,如下图:
默认统计字段的位置为“分组尾”,即统计字段放在分组尾行里,位置为“分组头”即统计字段放在分组尾行里。
最终生成结果如下图:
(2)分组管理
管理数据表分组。如下图:
右边“已添加分组”里分组从上到下的次序表示先后的分组次序,对应到数据表中钮调整分组次序,同时数据表里的分组行也会被相应调整。
可以为每个分组设置属性,点“高级”按钮,设置“不同分组重起一页”,如下图,如果选择改属性,则每个分组的数据都会另起一页打印。
(3)承前过次
菜单“表格—>承前过次”,设置此功能会在数据表中插入行实现承前过次。承前过次的主要功能就是连续打印多页数据时根据需要在每一页的头部或尾部插入行显示数据起到承前起后的作用,数据内容多为重复上一条数据或者进行区域(页)统计或者累计,目前不支持在承前页行中显示分组小计。
根据承前过次行所在位置的不同,产生的效果也不同,一般分为2种情况:
(1) 位于分组行外:则承前过次行的出现和其内的分组无关,只和页的位置有关即是否有上一页、下一页有关。
例如:连续打印3页,则第1页有过次行,第2页有承前行和过次行,第3页只有承前行。
(2)承前过次行在分组行内即数据行的上下方:这种情况设置时,可以设置为占据数据行,也可以直接设置位置,不管怎样设置,承前过次行的位置都在分组内。此时承前过次行的出现除了和分页有关,还会随分组的开始结束而产生不同的变化,统计的数据也是分组内的数据。
设置好后数据表中的位置如下:
此种设置遵循的规则为:
(A)1个分组内出现分页,第一页不会产生承前行;如果有上一页则产生承前行;如果有下一页产生过次行;
(B)统计的数据是分组内的数据。
特殊的情况,例如有2个分组出现在一页,也是遵循以上规则,如果第1个分组有上一页则产生承前行,第2个分组有下一页则会产生过次行,这个过次行统计的数据是第2个分组的数据,不包括第1个分组的数据,如下图:
例如按单据号进行分组,在分组内设置承前过次行,总共连续打印2张单据,第1张单据有3页,第2张单据有2页,第2张单据另起1页打印,共5页, 此种设置实现的效果为:
第1页即第1张单据的第1页有过次行,第2页有承前行、过次行,第3页有承前行;开始打第2张单据,另起一页即第4页,有过次行;第5页有承前行。
【套打】数据表控件介绍
本文2024-09-22 20:14:58发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-112402.html