BeforeExecuteOperationTransaction事件下获取单据体数据原创
金蝶云社区-十豆加
十豆加
0人赞赏了该文章 29次浏览 未经作者许可,禁止转载编辑于2024年06月22日 11:30:29

//首先一定要添加这个强制预加载事件        
public override void OnPreparePropertys(PreparePropertysEventArgs e)

        {

            base.OnPreparePropertys(e);

               //选择自己需要的单据体字段标识进行添加

            e.FieldKeys.Add("FMATERIALID");               //物料编码

            e.FieldKeys.Add("FRMREALQTY");               //实退数量  

            e.FieldKeys.Add("FSTOCKID");                     //仓库

        }


      public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e)

        {

             base.BeforeExecuteOperationTransaction(e);

               

            //e.SelectedRows是获取你在列表钟所选的行的数据

             foreach (ExtendedDataEntity dataEntity in e.SelectedRows)

            { 

                  //获取当前循环到的单据体数包

                Entity entity = this.BusinessInfo.GetEntity("FPURMRBENTRY");

                DynamicObject dy=dataEntity.DataEntity;

                //获取单据体行集合

                DynamicObjectCollection rows = entity.DynamicProperty.GetValue(dy) as DynamicObjectCollection;

            }

        }

赞 0