在表单插件里面构造合计tips数据,然后发给前端控件显示。 在表单插件里面构造合计tips数据,然后发给前端控件显示。
星空标准列表,支持配置实现选中行合计,报表默认没有支持,想要实现类似功能,需要做表单插件开发,实现的核心是,在表单插件里面构造合计tips数据,然后发给前端控件显示。
调用单据体控件方法如下:
this.View.GetControl<EntryGrid>("FList").SetSelectRowsTips(ja);
新建一个直接SQL报表或者简单报表(数据源需要插件实现)
新建一个表单插件,指定代码设置合计行
实现效果如下:
参考代码:
using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel; using Kingdee.BOS.Core.Report.PlugIn; using Kingdee.BOS.Core.Util; using Kingdee.BOS.JSON; using Kingdee.BOS.Util; using Kingdee.BOS.Web.Report.SQLReport; using Kingdee.BOS.WebApi.FormService; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Cloud.BOS.Support.Report.SQLReport { [HotUpdate] public class SqlRptSelRowPlugin : AbstractSysReportPlugIn { public override void EntityRowClick(EntityRowClickEventArgs e) { //获取选中行 var selData = (this.View as SQLReportView).SelectedDataRows; if (selData == null || selData.Length == 0) return; var ja = new JSONArray(); List<string> summaryFieldList = new List<string>() { "FQTY", "FALLAMOUNT" }; decimal sumQty = 0; decimal sumAmount = 0; //计算数量和金额 for (int i = 0; i < selData.Length; i++) { var row = selData[i]; if (row.Table.Columns.Contains("FQTY")) { sumQty += Convert.ToDecimal(row["FQTY"]); } if (row.Table.Columns.Contains("FALLAMOUNT")) { sumAmount += Convert.ToDecimal(row["FALLAMOUNT"]); } } var joQty = new JSONObject(); joQty.Put("Value", sumQty.ToString("N2")); joQty.Put("Caption", "数量合计: "); ja.Add(joQty); var joAmount = new JSONObject(); joAmount.Put("Value", sumAmount.ToString("N3")); joAmount.Put("Caption", "金额合计: "); ja.Add(joAmount); this.View.GetControl<EntryGrid>("FList").SetSelectRowsTips(ja); } public override void BarItemClick(BarItemClickEventArgs e) { if (e.BarItemKey.EqualsIgnoreCase("btnExportCustomer")) { //获取报表左侧勾选的选择数据 var selData = (this.View as SQLReportView).SelectedDataRows; //遍历DataRows[]数组,获取选择行数据 } } } }
在表单插件里面构造合计tips数据,然后发给前端控件显示。 在表单插件里面构造合计tips数据,然后发给前端控件显示。
星空标准列表,支持配置实现选中行合计,报表默认没有支持,想要实现类似功能,需要做表单插件开发,实现的核心是,在表单插件里面构造合计...
点击下载文档
上一篇:远程主机强迫关闭连接解决办法下一篇:解决附件升级问题疑难
本文2024-09-16 17:44:59发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-17694.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章