--睁开bom查询的函数
createfunctionf_bom(
@itemint
)returns@rtable(
itemint,
brandnvarchar(10),
part_nonvarchar(10),
QTYdecimal(10,0),--取自BOM_DETAIL
levelint,--条理
sidvarchar(8000)--排序字段,经由过程这个来排序,能够表现出树形的条理
)
as
begin
declare@lint
set@l=0
insert@rselect@item,brand,part_no,0,@l,right(10000+item,4)
fromitem
whereitem=@item
while@@rowcount>0
begin
set@l=@l+1
insert@rselecti.item,i.brand,i.part_no,d.qty,@l,r.sid+,+right(10000+i.item,4)
fromitemi,BOM_HEADh,BOM_DETAILd,@rr
wherer.level=@l-1
andr.item=h.MASTER_ITEM
andh.STATUS=利用中
andh.PKID=d.BOM_HEAD_PKID
andd.CHILDREN_ITEM=i.item
end
return
end
go
--挪用函数失掉查询了局
select条理=space(level*2)+├─
,item,brand,part_no,qty
fromf_bom(1)
orderbysid
go