销售订单到计划订单到下游单据自定义字段携带处理
4人赞赏了该文章
1,850次浏览
编辑于2017年08月08日 09:57:48
在项目实施过程中,经常有客户提到需要将订单自定义字段或某个字段携带到MRP计划订单,以及计划订单投放的下游单据,以下给出一个简单的实现方法:举例:销售订单备注字段在MRP运算后能够携带到下游单据,如 MRP计划订单、 生产任务单、 任务汇报请检单、及产品入库单上。首先MRP运算后产生的计划订单和销售订单没有单据转换关系,不存在简单上下游字段携带关系。如要携带需做简单开发处理,具体如下:一:销售订单运算后字段携带到MRP计划订单上方案如下:1、MRP计划订单上增加自定义字段;2、按如下SQL例子将相应字段名修改为自己需要的字段名即可,3、执行SQL。注意:此种方法只能在计划订单序事簿查询时看到字段值,计划订单单据无法获取到字段值。--指定销售订单一个唯一的字段名Delete From ICChatBillTitle WHERE FTypeID = 604 And FColName='销售订单字段名'DECLARE @MaxInterID INTSELECT @MaxInterID = Max(FInterID) FROM ICChatBillTitle WHERE FTypeID = 604--以下的字段根据需要修改INSERT INTO ICChatBillTitle( FInterID,FTypeID,FColCaption,FHeadSecond,FColName,FTableName,FColType,FColWidth,FVisible,FItemClassID,FVisForQuest,FReturnDataType,FCountPriceType,FCtlIndex,FName,FTableAlias,FAction,FNeedCount,FIsPrimary,FLogicAction,FStatistical,FMergeable,FVisForOrder,FColCaption_CHT,FColCaption_EN,FControl,FMode,FControlType,FPrecisionField,FAlign,FEditable,FFormat,FFormatType,FMustSelected) VALUES (@MaxInterID+1,604,'MRP计划订单自定义字段名$','','FSELFFldofYours','SEOrder',1,1000,1,-1,1,1,2,1,'FSELFFldofYours','u2','(SELECT TOP 1 销售订单字段名 FROM SEOrderEntry WHERE FInterID=v1.FOrgSaleInterID AND FEntryID=v1.FOrgEntyrID)',0,0,'',1,0,1,'MRP计划订单自定义字段名$','MRP计划订单自定义字段名$',0,0,5,'',0,0,'',0,0)go
二:计划订单投放生产任务单时需要通过触发器来实现,触发器案例如下,可参照编写。Create trigger test_aa On ICMrpResultFor updateAs if Update(Fstatus)begin declare @b_name varchar(50) select @b_name=Fstatus from inserted if @b_name = '3' update icmo set icmo.FHeadSelfJ0195=inserted.FAuxNoBatchQty --FHeadSelfJ0195 生产任务单自定义字段, FAuxNoBatchQty计划订单净需求 from icmo inner join inserted on inserted.Finterid =icmo.FPlanOrderInterID where inserted.FItemType = 11011 and icmo.FMRP = 11077 --11011 计划订单单据类型生产任务类, 11077MRP计划订单产生end
三:生产任务单——》任务汇报请检单——》及产品入库单,三张单据间有转换关系,请在BOS单据转换关系中自行添加字段对应关系。
二:计划订单投放生产任务单时需要通过触发器来实现,触发器案例如下,可参照编写。Create trigger test_aa On ICMrpResultFor updateAs if Update(Fstatus)begin declare @b_name varchar(50) select @b_name=Fstatus from inserted if @b_name = '3' update icmo set icmo.FHeadSelfJ0195=inserted.FAuxNoBatchQty --FHeadSelfJ0195 生产任务单自定义字段, FAuxNoBatchQty计划订单净需求 from icmo inner join inserted on inserted.Finterid =icmo.FPlanOrderInterID where inserted.FItemType = 11011 and icmo.FMRP = 11077 --11011 计划订单单据类型生产任务类, 11077MRP计划订单产生end
三:生产任务单——》任务汇报请检单——》及产品入库单,三张单据间有转换关系,请在BOS单据转换关系中自行添加字段对应关系。
推荐阅读