公司开发提出:希望在BOM中,能直接看到外购物料的来源是哪一家供应商。之前只能人工去物料属性中查找,费时费力。
我想这还不简单,打开K3BOS系统,给BOM表加个字段就叫‘来源’,然后带出物料属性中的‘来源’不就行了吗?
一顿操作猛如虎,回头一看二百五。系统有点坑。在BOM中加完字段,只有新增或修改BOM,才会把物料来源中的供应商带过来。
加字段之前已审核的BOM中的来源字段全是空白。
然后想了个办法:在数据库中,批量更新了这个字段。但是又有新问题来了,我们公司经常更换供应商,定时后台批量更新也可以,
但是有一定的延后性。如何做到只要物料属性中的来源修改后,BOM中的来源也会同步更新呢?只能做个触发器了。
打开K3 BOS系统,找到BOM单,添加自定义字段。
加完字段后的BOM
物料属性中的来源
以下是触发器语句:
create trigger update_icbom_laiyuan on t_ICItemBase
for update
as
if exists (select 1
from ICBOMChild join inserted on ICBOMChild.FItemID = inserted.FItemID
join t_Item on inserted.FSource = t_Item.FItemID
where FEntrySelfZ0142 <> t_Item.FName )
begin
update ICBOMChild set FEntrySelfZ0142 = t_Item.FName
from ICBOMChild join inserted on ICBOMChild.FItemID = inserted.FItemID
join t_Item on inserted.FSource = t_Item.FItemID
where FEntrySelfZ0142 <> t_Item.FName
return
end
--t_ICItemBase物料基础资料表 --FEntrySelfZ0142 BOM分录里的自定义‘来源’

