电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

如何在报表上按组织进行分组合计,并且将合计行高亮显示

来源:金蝶云社区作者:金蝶2024-09-2314

如何在报表上按组织进行分组合计,并且将合计行高亮显示

# 一、需求 二开报表按组织进行分组,合计每一组的金额,并且将合计行高亮显示。 # 二、思路与方案 1. 使用报表取数插件,查询出DataSet之后,用algo的groupBy、sum计算每个组织的数量,然后用union将合计的结果集与原DataSet进行合并,最后用orderBy对分组名称排序。 2. 高亮行可以用界面规则来做,但报表的界面规则是在前端解析的,前端解析只支持红框内的表达式(如下截图这些表达式),不支持红框外的匹配符,例如不支持 like "%xxx%" 的表达式,因此,我们需要为报表添加额外字段,来告诉报表,哪一行需要高亮显示。 ![image.webp](/download/0100d1aac110240442a78b5d4d372675c349.webp) # 三、实现过程 ## 1.创建报表 ![image.webp](/download/0100370535d8760a4127933725304efcc235.webp) ## 2.拖入一些字段 下面这四个字段, - 组织名称的字段类型是文本,将作为分组条件 - 名称字段的字段类型是文本,库存物品的名称 - 金额字段的字段类型是金额,将作为合计值 - 是否高亮的字段类型是整数,将作为界面规则的前置条件 ![image.webp](/download/0100227ccccd52424555bd896859b2645e0d.webp) ## 3.配置界面规则 ![image.webp](/download/0100534e4e69fc154e248c2ff77c6b016ff9.webp) ### 3.1前置条件 ![image.webp](/download/01007664fac7d657460f9f653bb5938c7a8a.webp) ### 3.2成立时的界面规则,调整背景色 ![image.webp](/download/0100d12c81e161f14a2ca742fe437cf2e1e9.webp) ## 4.编写报表取数插件并注册 ![image.webp](/download/0100c97b1c603e2f4e1bba7b24ed875bbef4.webp) 插件代码如下 ``` import kd.bos.algo.DataSet; import kd.bos.entity.report.AbstractReportListDataPlugin; import kd.bos.entity.report.FilterItemInfo; import kd.bos.entity.report.ReportQueryParam; import kd.bos.entity.report.parser.IParser; import kd.bos.entity.report.parser.QFilterParserFactory; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.QueryServiceHelper; public class MReportListDataPlugin extends AbstractReportListDataPlugin { @Override public DataSet query(ReportQueryParam reportQueryParam, Object o) throws Throwable { // 查询原始数据 DataSet dataSet = QueryServiceHelper.queryDataSet(getClass().getName(), "kdec_materials_storage", "name as kdec_name, kdec_amountfield, kdec_orgfield.name as kdec_orgname", // 请开发者按自己的业务需求过滤原始数据,本案例的QFilter为空 null, n

如何在报表上按组织进行分组合计,并且将合计行高亮显示

# 一、需求二开报表按组织进行分组,合计每一组的金额,并且将合计行高亮显示。# 二、思路与方案1. 使用报表取数插件,查询出DataSet之...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信