供应商协同开发案例 —— 企业端单据调用原创
金蝶云社区-MiLai
MiLai
4人赞赏了该文章 988次浏览 未经作者许可,禁止转载编辑于2020年08月03日 17:27:10


案例背景:


供应商协同开发的时候,我们需要对送货单进行审核、订单等进行提交操作。


错误解读:

但是仅仅把协同端单据配置提交、审核按钮,是完成不行的。协同表单和企业端同名单据是不同元数据,提交审核只会针对当前元数据流程生效,导致企业端无法进入审批流、审核不反写等情况。



示例代码:

其实最终思想还是调用了BusinessDataServiceHelper里面的方法,去触发企业端FormId进行相应操作,BusinessDataServiceHelper里面有Submit,Delete方法,对应传ids即可。


using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.List.PlugIn;
using Kingdee.BOS.Orm;
using Kingdee.BOS.ServiceHelper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BHR.K3.PSPB.BusinessPlugIn
{
    public class SCPReciveBillList : AbstractListPlugIn
    {
        public override void AfterDoOperation(AfterDoOperationEventArgs e)
        {
            base.AfterDoOperation(e);
            switch (e.Operation.Operation.ToUpperInvariant())
            {
                case "BARITEMKEY":
                    if (e.OperationResult.IsSuccess)
                    {
                        if (this.ListView.SelectedRowsInfo.Count == 0)
                        {
                            this.View.ShowErrMessage("请至少选择一条分录");
                            return;
                        }
                        List<object> fids = new List<object>();
                        for (int i = 0; i < this.ListView.SelectedRowsInfo.Count; i++)
                        {
                            fids.Add(this.ListView.SelectedRowsInfo[i].PrimaryKeyValue);
                        }
                        OperateOption option = OperateOption.Create();
                        var result = BusinessDataServiceHelper.Delete(this.Context, "企业端对应FormId", fids.ToArray(), option, "");
                        if (result.IsSuccess)
                        {
                            this.View.ShowMessage("删除成功");
                            this.View.Refresh();
                        }
                        else
                        {
                            this.View.ShowMessage("删除失败");
                            //result.ValidationErrors可以自行拼接error结果显示
                        }
                    }
                    break;
                default:
                    break;
            }
        }
    }
}


赞 4