反写多选基础资料 金蝶云星空 企业版 插件

反写多选基础资料

    [Kingdee.BOS.Util.HotUpdate]
    [Description("xx模块-下推xxx--审核服务插件反写多选基础资料")]


    public class XxxxYyyy : AbstractOperationServicePlugIn
    {
        public override void OnPreparePropertys(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.PreparePropertysEventArgs e)
        {
            base.OnPreparePropertys(e);
            e.FieldKeys.Add("F_QGXM_SJBM_zc5_eak");
            e.FieldKeys.Add("F_QGXM_YDID");
        }

        public override void EndOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);

            //反写多选基础资料
            foreach (DynamicObject dyObject in e.DataEntitys)
            {
                long FID = Convert.ToInt64(dyObject["Id"]);
                long FSouceID = Convert.ToInt64(dyObject["F_QGXM_YDID"]);
                //获取最大主键id,手动自增
                var sqltwo = "/*dialect*/select max(FPKID) as FPKID from QGXM_t_8DBG_SJBM ";
                var datatwo = DBUtils.ExecuteDynamicObject(this.Context, sqltwo);
                var FPKID = Convert.ToInt64(datatwo[0][0].ToString());
                //获取当前页面已选多部门
                var sqlone = $"/*dialect*/select F_QGXM_SJBM_ZC5_EAK from QGXM_t_Cust_Entry100165 where FID={FID}";
                var dataone = DBUtils.ExecuteDynamicObject(this.Context, sqlone);
                if (dataone.Count > 0)
                {
                    DBServiceHelper.Execute(this.Context, $"/*dialect*/delete from QGXM_t_8DBG_SJBM where FID={FSouceID}");
                    for (int i = 0; i < dataone.Count; i++)
                    {
                        DBServiceHelper.Execute(this.Context, $"/*dialect*/insert into QGXM_t_8DBG_SJBM values({++FPKID},{FSouceID},{dataone[i][0]})");
                    }
                }


            }
        }
    }

 

posted @ 2024-09-18 22:56  中国结  阅读(19)  评论(0编辑  收藏  举报