生产补料单选择生产订单之后携带二开字段到补料单上原创
金蝶云社区-Windseeker
Windseeker
2人赞赏了该文章 128次浏览 未经作者许可,禁止转载编辑于2024年02月27日 16:04:37

using Kingdee.BOS.Core.Bill.PlugIn;

using System;

using System.Collections.Generic;

using Kingdee.BOS.Util;

using Kingdee.K3.Core.MFG.EntityHelper;

using System.Linq;

using System.Text;

using System.ComponentModel;

using Kingdee.BOS.Core.SqlBuilder;

using Kingdee.BOS.Core.Metadata;

using Kingdee.BOS.ServiceHelper;


namespace EXT.Business.PlugIn

{

    [Description("生产补料单选择生产订单之后携带二开字段到补料单上")]

    public class FeedMtrlSelectMo : AbstractBillPlugIn

    {

        public override void DataChanged(global::Kingdee.BOS.Core.DynamicForm.PlugIn.Args.DataChangedEventArgs e)

        {

            base.DataChanged(e);

            if (e.Field.Key.ToUpperInvariant() == "FMOENTRYID")

            {

                long moEntryIds = Convert.ToInt64(e.NewValue); //获取订单分录内码

                QueryBuilderParemeter queryParam = new QueryBuilderParemeter();

                queryParam.SelectItems.Add(new SelectorItemInfo("FBASE")); //生产订单二开的字段,包含基础资料字段

                queryParam.FilterClauseWihtKey = string.Format(" FTreeEntity_FEntryId = {0} ", moEntryIds);

                queryParam.FormId = "PRD_MO";

                var objs = QueryServiceHelper.GetDynamicObjectCollection(this.Context, queryParam);

                if (!objs.IsEmpty())

                {

                    string strBase = objs.FirstOrDefault().GetDynamicValue<string>("FBASE");

                    this.View.Model.SetValue("FBASE", strBase, e.Row);//生产补料单二开的字段

                }

            }

        }

    }

}


赞 2