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

#二开#简单账表,分组汇总、合计数据带百分号 % 的处理

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

#二开#简单账表,分组汇总、合计数据带百分号 % 的处理

# 业务场景 星空报表开发中,遇到带百分号(%)的数据列,在进行分组汇总时会导致数据错乱,可通过报表的表单插件,对汇总行进行修改处理,具体效果如下: ![image.webp](/download/0100ab28b44a9d2a482f942b1c1394def506.webp) 可以看到,营业利用率列的数据是带%的,汇总行的数据也是正确的,而不是简单的合计。 ![image.webp](/download/0100d9af6067639e4bfdb7f3053c5d65366a.webp) # 实现步骤 ### 1.在初始化方法中启用分组合计 在报表的服务插件里的初始化方法Initialize()设置分组汇总启用 ``` public override void Initialize() { //初始化 base.Initialize(); //标识报表是否支持分组汇总 ReportProperty.IsGroupSummary = true; } ``` ### 2.字段类型设置为数值类型 如果是取数插件设置的字段,则使用SqlStorageType.SqlDecimal设置为数值类型 ``` /// 设置标题 public override ReportHeader GetReportHeaders(IRptParams filter) { ReportHeader header = base.GetReportHeaders(filter); //设置字段 header.AddChild("FYYLRL", new LocaleValue("营业利润率(%)"), SqlStorageType.SqlDecimal); return header; } ``` 如果是在BOS里配置的字段,一样使用数值类型的字段,一般使用小数。 ![image.webp](/download/01002d2411ae4bc742d1b1478c7d3253cb00.webp) ### 3.设置为合计列 方法一:报表服务插件GetSummaryColumnInfo()方法里设置。 营业利润率字段标识:FYYLRL,这里如果不是数值类型汇总会报错。 ```language var result = base.GetSummaryColumnInfo(filter); // 设置报表合计列 result.Add(new SummaryField("FYYLRL", BOSEnums.Enu_SummaryType.SUM)); return result; ``` 方法二:BOS字段设置汇总类型:合计 ![image.webp](/download/01005d033a6964b442a88f6d4c77ce4033ea.webp) ### 4.设置分组汇总 设置按客户分组汇总 ![image.webp](/download/0100ec1f50357ff24076845211bb4aaa7b20.webp) 设置默认分组 ![image.webp](/download/01008ad52699a0664853b1d778a012fbbbcc.webp) 这里如果不设置按客户分组的话,汇总行就会在单据体下方,像这样 ![image.webp](/download/0100d3548dc285a7457c99de24e9d8a01d44.webp) ### 5.检查是否分组汇总成功 ![image.webp](/download/010003727e466151452b9fd5368396bc79cb.webp) 此时,数据行正常汇总。可是客户利润率这行的汇总数据是累加的,我需要的是营业利润/销售收入,也没有%号。这两个问题都需要表单插件做处理 ### 6.报表表单插件 ```language using Kingdee.BOS.Core.Report.PlugIn; using Kingdee.BOS.Core.Report.PlugIn.Args; using System; using System.ComponentModel; namespace HNKD.K3.JinMoFang.App.ServicePlugin { [Kingdee.BOS.Util.HotUpdate] [Description("【表单插件】客户利润表,自定义列合计")] public class KHLRB_ReportEdit : AbstractSysReportPlugIn { //记录字段类型 static private string type = "";

#二开#简单账表,分组汇总、合计数据带百分号 % 的处理

# 业务场景星空报表开发中,遇到带百分号(%)的数据列,在进行分组汇总时会导致数据错乱,可通过报表的表单插件,对汇总行进行修改处理,...
点击下载文档文档为doc格式

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

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