天天看點

按BOM清單展開物料及需求(SQL)

适用環境:

人工的去展開BOM

CREATE function f_pcode1(@code varchar(20))

returns @re1 table(code varchar(20),father varchar(20),uom varchar(5),quantity float,level1 int)

as

begin

declare @l int

declare @father varchar(20) 

declare @uom varchar(5)

declare @quantity float

set @l=0

insert @re1 select @code,@father,@uom,@quantity,@l

while @@rowcount>0

  set @l=@l+1

  insert @re1(code,father,uom,quantity,level1) select a.code,a.father,a.uom,a.quantity,@l

  from itt1 a,@re1 b

  where a.father=b.code collate database_default

   and b.level1=@l-1

end

return

用這個SQL我實作了這樣一種功能:按銷售訂單查詢成品的标準BOM清單,并計算需求。

輸入成品的料号

輸出父料号、子料号、機關、用量、BOM級别

<a href="http://www.itpub.net/misc.php?action=viewratings&amp;tid=713997&amp;pid=6719862"></a>

關于B1的兩個功能(二)按銷售訂單展開生産訂單的用料清單

簡單的說:就是輸出一個銷售訂單銷售物料的生産訂單用料清單

CREATE function f_wo(@code_a varchar(20),@code_b varchar(20))

returns @re1 table(DocEntry int,code varchar(20),father varchar(20),uom varchar(5), PlannedQty float,IssuedQty float,level1 int)

DECLARE @DocEntry INT

declare @code varchar(20)

declare @IssuedQty float

declare @PlannedQty float

declare @re2 TABLE (DocEntry int,code varchar(20),father varchar(20), PlannedQty float,IssuedQty float,OriginNum int)

insert @re2(DocEntry,code,father,PlannedQty,IssuedQty,OriginNum) SELECT DiSTinct T1.DocEntry,T1.ItemCode, T0.ItemCode,T1.PlannedQty, T1.IssuedQty ,T0.OriginNum from OWOR T0 INNER JOIN WOR1 T1 ON T0.DocEntry = T1.DocEntry where   t0.OriginNum = @code_a

insert @re1(code,father,PlannedQty,IssuedQty,level1) select @code_b,@father,@PlannedQty,@IssuedQty,@l

set @l=@l+1

insert @re1(DocEntry,code,father,IssuedQty,PlannedQty,level1) select DiSTinct a.DocEntry,a.code,a.father,a.IssuedQty,a.PlannedQty,@l

from @re2 a,@re1 b

where a.father=b.code collate database_default

and b.level1=@l-1

--------------

這個就是按單生産的SQL。

輸入項目:銷售訂單号、銷售訂單銷售的成品料号。

輸出:

生産訂單号

料号

父料号

發出數量

計劃數量

BOM級别

由以上的兩個功能可以開發出:按銷售訂單生産、計劃的功能。

專注于企業資訊化,最近對股票資料分析較為感興趣,可免費分享股票個股主力資金實時變化趨勢分析工具,股票交流QQ群:457394862

本文轉自滄海-重慶部落格園部落格,原文連結:http://www.cnblogs.com/omygod/archive/2007/12/14/995611.html,如需轉載請自行聯系原作者

繼續閱讀