如何实现按序列号检验时下推生成的检验单按序列号拆单即一张单据一个序列号

需求描述:按序列号检验时,下推生成检验单时一张单据上一个序列号;
解决方案:(此处以产品检验为例,当生产汇报单上存在序列号时,二开方案如下)
1、首先产品检验单单据类型勾选按序列号拆分行,如下图所示:

2、生产汇报单到检验单的单据转换规则的分组策略中的分单依据中增加序列号字段,如下图所示:

3、二开单据转换插件继承AbstractConvertPlugIn,重写AfterConvert事件,在事件中将下推生成的多个检验单每个单据仅保留一行数据(详细逻辑为:录入一共3个单据,第1个单保留第1行,第2个单保留第2行,第三个单保留第3行,这样可以确保单据彼此之间的序列号不会重复),详细二开示例代码如下:
using Kingdee.BOS.Core;
using Kingdee.BOS.Core.Metadata.ConvertElement.PlugIn;
using Kingdee.BOS.Core.Metadata.ConvertElement.PlugIn.Args;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.K3.Core.MFG.EnumConst;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Kingdee.BOS.Util;
using Kingdee.K3.Core.MFG.EntityHelper;
namespace Test.K3.MFG.QM.App.BillConvertServicePlugIn.ToInspect
{
public class test : AbstractConvertPlugIn
{
public override void AfterConvert(AfterConvertEventArgs e)
{
base.AfterConvert(e);
ExtendedDataEntity[] entryDataes = e.Result.FindByEntityKey("FBillHead");
int i=1;
foreach (ExtendedDataEntity headData in entryD
如何实现按序列号检验时下推生成的检验单按序列号拆单即一张单据一个序列号
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



