SAP B1外发加工件成本的处理方法(曹玉平于奥莱照明)

 

SAP B1外发加工件成本的处理方法(曹玉平于奥莱照明)

针对一个要进行多次加工的毛坯物料,如果要精确反映其成本,则必须对不同时期加工的方法指定一个代码。在SAP B1中解决的方法如下:

1、                    先在物料主数据中,增加三个字段,第一字段描述为毛坯代码,名称SourceCode。第二个字段描述为毛坯单价,名称SourcePrice。第三个字段描述为外发单价,名称为AddPrice

2、                    对每个加工类型物料代码设置其不同时期的毛坯代码。

 

举个例子,有个电话筒,经过开模后,在注塑机上,用PC原料加色粉做成话筒毛坯,我们将此毛坯话筒加代码:020101001,描述这样写:话筒-毛坯。对于此物料,如果要反映其成本和料用量,需新增一个BOM清单,内容是PC原料和用量,另外还有将色粉及用量也加入清单。

记住上面的做法,只有是最原始的毛坯物料才采取这种方式。

现在话筒的毛坯的做出来了,然后需要外发喷油。这时我们要对此物料加新代码:020102001,描述这样写:话筒-喷油。在物料主数据中,将此物料的毛坯代码直接指向020101001,也即:话筒-毛坯。

话筒喷油回来,还需外发电镀成铬色。我们再新加一个代码020103001,描述这样写:话筒-电镀(铬色)。在物料主数据中,将此物料的毛坯代码指向0201020001也即:话筒-喷油。

OK,现在一个完整的外发物料代码基本建好了,接下来要写段SQL程序来计算其真实成本了。首先计算最原始的毛坯,即0201010001 话筒-毛坯。

SQL代码如下:

DECLARE @SourcePrice MONEY,@AddPrice MONEY

IF LEFT(ItemCode=’020101’ BEGIN        --从物料清单中取单价

SELECT @SourcePrice=SUM(Price FROM ITT1 WHERE

Father=’020101001’)

 

 UPDATE OITM SET SourcePrice=@SourcePrice

WHERE ItemCode=’020101001’ –只更改毛坯单价

END ELSE BEGIN

SELECT @SourcePrice=Price FROM POR1

WHERE ItemCode=SourceCode      --取毛坯单价

 

SELECT @AddSourcePrice=Price FROM POR1

WHERE ItemCode=’0201020001’ -- --从采购订单中取单价

 

UPDATE OITM SET SourcePrice=@SourcePrice,AddPrice=@AddPrice

WHERE ItemCode=’020102001’   --既更改毛坯单价,又更改外发加工价

END

 

 

曹玉平:男 湖南郴州桥口排塘曹家

原文地址:https://www.cnblogs.com/caoyupin/p/1436503.html