40、动态表单插件,AfterDeleteRow事件,单据体,分录行删除时触发原创
金蝶云社区-林荫大道cc
林荫大道cc
6人赞赏了该文章 4350次浏览 未经作者许可,禁止转载编辑于2020年07月11日 18:10:44
封面

使用上一节39代码



1.1、定义一个方法,求和事件


        //定义一个方法,求和事件
        public double GetSumQty()
        {
            //定义数量为0,存放合计和
            Double Qty = 0;
            
            //获取单据所有信息
            Entity entity = this.View.BillBusinessInfo.GetEntity("F_YDIE_Entity");
            
            //获取到集合里面
            DynamicObjectCollection entityobject = this.View.Model.GetEntityDataObject(entity);
            
            if(entityobject != null)
            {//循环所有单据分录,相加,返回
                for(int i =0;i<entityobject.Count;i++)
                {
                    if(Convert.ToString(this.View.Model.GetValue("FQTY",i)) !="")
                    {          //转成数字格式
                        Qty += Convert.ToDouble(this.View.Model.GetValue("FQTY", i));
                    }
                }
            }
            return Qty;
        }



1.2、打开单据后,计算出合计数


        public override void AfterBindData(EventArgs e)
        {
            base.AfterBindData(e);
            
            //打开单据加载后,调用求和事件
            this.View.Model.SetValue("FSumQty", this.GetSumQty());
            
            //刷新字段
            this.View.UpdateView("FSumQty");
        }


1.3、删除分录后,合计数变化,本节标题介绍的方法


        //删除行事件
        public override void AfterDeleteRow(BOS.Core.DynamicForm.PlugIn.Args.AfterDeleteRowEventArgs e)
        {
            base.AfterDeleteRow(e);
            
            //每删除一次,调用求和事件
            this.View.Model.SetValue("FSumQty", this.GetSumQty());
            
            this.View.UpdateView("FSumQty");
        }

image.png



2、放一个小数字段,销售出库合计数 FSumQty


image.png


AfterDeleteRow


触发时机

分录行删除后触发

 

应用场景

删除分录行之后,根据业务需要修改字段值或控件可见性、可用性,或级联修改其他相关信息。

 

关键字

删除行 分录行 字段值 可见性 可用性



3、最终效果,重新打开销售订单,点按钮,查看销售出库单;


3.1、打开单据后,计算出合计数


image.png



3.2、删除分录后,合计数变化


image.png


总目录链接

https://vip.kingdee.com/article/64993872014591232



赞 6