表单插件对直接sql账表汇总字段的干预
说明:
1、如果在直接sql账表取数中自行加了小计,在汇总统计的时候是无法通过设置排除小计数据的,下面的示例通过对临时表数据的干预,达到对汇总数据的干预
2、直接sql账表只有表单插件,并且运行的事件非常少,主要有AfterBindData ,OnFormatRowConditions; 连单元格格式化事件都不执行。
示例过程:
创建直接sql账表aa,对账表数量字段,如果是偶数行则设置为0,不做汇总
1、创建直接sql账表表单插件,代码:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel; using Kingdee.BOS.Util; using Kingdee.BOS.Core; using Kingdee.BOS.Core.Report.PlugIn; using Kingdee.BOS.Model.Report; using Kingdee.BOS.App.Data; namespace Kingdee.BOS.TestPlugIn22.FormPlugin { [HotUpdate] [Description("单据测试插件")] public class TestFormPlugIn : AbstractSysReportPlugIn { bool _isRunFormat = false; public override void AfterBindData(EventArgs e) { base.AfterBindData(e); _isRunFormat = true; } /// <summary> /// 格式化行数据,每一行会运行一次 /// </summary> /// <param name="args"></param> public override void OnFormatRowConditions(Core.Report.PlugIn.Args.ReportFormatConditionArgs args) { if (this._isRunFormat) { base.OnFormatRowConditions(args); var sqlModel = this.Model as SQLReportModel; var sql = string.Format("Update {0} set 数量=0 where FIdentityId%2=0", sqlModel.TableName); DBUtils.Execute(this.Context, sql); this._isRunFormat = false; } } } }
2. 注册表单插件
3. 没有插件的运行效果
4、注册插件干预后的效果:
表单插件对直接sql账表汇总字段的干预
说明:1、如果在直接sql账表取数中自行加了小计,在汇总统计的时候是无法通过设置排除小计数据的,下面的示例通过对临时表数据的干预,达到...
点击下载文档
本文2024-09-23 04:16:08发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164217.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章