SAP B1 树状结构展开所有BOM

阅读量:18 2025-04-13 SAP B1 树状结构展开所有BOM

知识分享不易,转载请标注来源:http://www.blenderkou.top/contents/3/6409.html
版权申明:欢迎转载,但请注明出处。
一些博文中的参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。


关键词:SAP Business One,SAP B1,SAPB1,SBO,树状结构、展开BOM、BOM全部展开

SAP B1 树状结构展开所有BOM

SQL语句:

WITH Bom(Father,father_qty, code, BomLevel,sort,warehouse,Qty,UOM,issue ) AS 
(
    SELECT father,a2.qauntity,A.code, 1 AS bomlevel,convert(varchar(255),a.father+a.code),warehouse,convert(varchar(20),a.quantity),a1.InvntryUom,a.issuemthd 
    FROM itt1 A INNER JOIN OITM a1 ON A.CODE=a1.ITEMCODE
		INNER JOIN OITT A2 ON A.FATHER=A2.CODE
    where father not in (select code from itt1)
    UNION ALL
    SELECT e.father,e2.qauntity,e.code, bomlevel + 1,convert(varchar(255),rtrim(sort)+e.code),e.warehouse,convert(varchar(20),e.quantity/e2.qauntity*d.qty),e1.InvntryUom,e.issuemthd 
    FROM itt1 e INNER JOIN OITM e1 ON e.CODE=e1.ITEMCODE
		INNER JOIN OITT e2 ON e.FATHER=e2.CODE
        INNER JOIN Bom d ON e.father = d.code 
)
select 产成品,品名,成品数量,深度,物料号码,物料描述,用量,单位,发货仓库,发货方法  
FROM (
		SELECT null as 产成品,null as 品名,null 成品数量,sort,bomlevel as 深度,'.'+ space((bom.bomlevel)*4) + bom.code as 物料号码 , oitm.itemname as 物料描述,bom.qty as 用量,bom.uom 单位,bom.warehouse as 发货仓库,
			 case bom.issue when 'M' then N'手动' when 'B' then N'倒冲' end as 发货方法 
		from bom
			LEFT join oitm on bom.code=oitm.itemcode
		union all 
		select distinct t.father,oitm.itemname,t1.Qauntity,t.father,0,null,null,null,null,null,null 
			FROM itt1 t
			INNER join oitt t1 on t.father=t1.code
			LEFT join oitm on t.father =oitm.itemcode
		where t.father not in (select code from itt1)
	  ) t9
order by sort

执行结果:image.png

关注.png

扫描二维码,关注我的公众号,第一时间获取文章!


知识分享不易,转载请标注来源:http://www.blenderkou.top/contents/3/6409.html
版权申明:欢迎转载,但请注明出处。
一些博文中的参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。

上一篇

下一篇
SAP B1 查询单据对应批次&序列号明细