自定义单据转换下推生产订单只携带一行分录
【说明】
1、首先,二开单据转换路线(只针对从其他单据到生产订单的转换路线),必须了解生产订单上有两个比较重要的字段的含义:
组别(FGROUP):这个字段的用处是为了记录联副产品的关系,主产品的FGroup和联副产品的FGroup是一样的,每个主产品之间的FGroup是不一致的
行标识(FROWID):这个字段为了记录父子关系,为了构建树形结构的关系
2、客户在二开单据的时候很容易忽略掉这两个字段(因为是隐藏的,有自己的特殊含义),所以客户在二开的时候,通常不会给这两个字段赋值,这样就会造成上面的报错
3、要解决上面的问题,客户就必须通过单据转换插件来处理了(类似可以参考销售订单到生产订单),当然,我这里也会粗略的教大家如何对这两个字段赋值(这里需要有开发基础了):
客户要新加一个插件类,这个类继承于BaseBillConvertServicePlugIn,在这个插件类里面重写AfterConvert事件,在这个事件里面,对生产订单数据包里面的FGROUP和FROWID进行赋值
FGROUP赋值的方式:主产品的FGROUP等于FSEQ字段,联副产品的FGROUP等于主产品的FGROUP
FROWID赋值的方式:通过生产一个随机的GUID(内部已提供 SequentialGuid.NewGuid().ToString()生产一个GUID),给FROWID赋值
PS:也有不用二开插件的方法,但是此方法有局限性,不支持多张单据合并下推生产订单,只适用于一张单据多条分录下推生产订单,原因是多张单据的序号会重复,配置方法如下:
1、单据转换字段映射加上子项明细组别的映射,来源于上游单据体的序号,如图:
2、单据转换表单服务策略,新增服务,如下图:相关参考资料:https://vip.kingdee.com/article/35482?productLineId=1
自定义单据转换下推生产订单只携带一行分录
本文2024-09-23 04:02:40发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-162749.html