BOM-物料清单报告

2020-09-01 04:56发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们。

可能会知道如何从PRODUCTION-> REPORTS-> BOM表中运行"物料清单报告"查询?

对我来说,有趣的是,有可能运行一次查询以具有多个项目的多级bom结构。

先谢谢

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们。

可能会知道如何从PRODUCTION-> REPORTS-> BOM表中运行"物料清单报告"查询?

对我来说,有趣的是,有可能运行一次查询以具有多个项目的多级bom结构。

先谢谢

付费偷看设置
发送
9条回答
哎,真难
1楼 · 2020-09-01 05:21.采纳回答

您好,

尝试此查询最多六个级别的组件。

SELECT

T0。[父亲]为" Assembly",T0。[ 代码]设为'Component1',t10。[ItemName]'Description1',T1。[Code]设为'Component2',t11。[ItemName]'Description2',T2。[Code]设为'Component3',t12。[ItemName] 'Description3',T3。[代码]为'Component4',t13。[ItemName]'Description4',T4。[Code],作为'Component5',t14。[ItemName]'Description5',T5。[Code]作为'Component6。 ',t15。[ItemName]'Description6'

FROM

ITT1 T0左外连接ITT1 T1在T0.Code = T1。父亲左外连接ITT1 T2在T1.Code = T2.T2上的父亲左外连接ITT1 T3。代码= T3.T3上的父亲左外连接ITT1 T4。代码= T4.T4上的父亲左外连接ITT1 T5。代码= T5.T5上的父亲左外连接ITT1 T6。 代码= T6.t0上的父亲左外连接oitm t20。父亲= t20.itemcode上t0上的左外部连接oitm t10.code = t10.itemcode t1上的左外部连接oitm t11.code = t11.itemcode左外连接oitm t12 on t2.code = t12.itemcode t3.code上的左外部连接oitm t13 = t13.itemcode在t4.code上的左外部连接oitt 14 = t14.itemcode在t5.code = t15.itemcode的左外部连接oitm t15

感谢与问候,

Nagarajan

微wx笑
2楼-- · 2020-09-01 05:23

嗨,

我没有从上述查询中获得确切的要求。 请举例说明。 我将检查并明天回复。

感谢与问候,

Nagarajan

风早神人
3楼-- · 2020-09-01 05:15

尊敬的Gianluca Calloni,

您可以使用光标。 请检查此查询

声明@codice nvarchar(50);

DECLARE BOM_cursor CURSOR静态FOR

从其他代码输入中选择代码(" ITEMCODE"," ITEMCODE1"," ITEMCODE2")

打开BOM_cursor

如果@@ CURSOR_ROWS> 0

开始

从BOM_cursor到@codice的下一步

@@ FETCH_STATUS = 0

开始

; BOM(数据库,父级,子级,级别)为

(选择@codice,T0。父亲父级,T0.Code子级,从ITT1 T0获得0级别,其中T0.Father = @codice

全部从Itt1 T1选择@codice,T1.Father,T1.Code,Level + 1从T1的内部加入BOM T2.Father = T2.Child)

插入到#TmpBOM中,选择T4。*从BOM T4选项(MAXRECURSION 90)

从BOM_cursor INTO @codice下一步查找

END

END

关闭BOM_cursor

取消分配BOM_cursor

选择*来自#TmpBOM

DROP TABLE #TmpBOM

能不能别闹
4楼-- · 2020-09-01 05:17

嗨Dillibabu ..

很高兴为您提供帮助...

????????

祝你愉快

LUCA

bbpeas
5楼-- · 2020-09-01 05:13

嗨,大家好。抱歉我的回答延迟了...

好吧。我能够成功编写一个有效的"查询",例如:

 声明@SCOREX TABLE(linenum int IDENTITY(1,1),articolo nvarchar(50))
 声明@BM TABLE(DB nvarchar(50),Parent nvarchar(50),Child nvarchar(50),Level nvarchar(50))
 声明@codice nvarchar(50);
 声明@tot int; 十进制@single int;

 插入@SCOREX
      从OITM中选择ItemCode
      其中的项目名称,例如'%scorex%'
      和(项目名称不像'%fondal%',项目名称不像'%ALFLUX%',项目名称不像'%EUROLE%',项目名称不像'%BRASC%')
      和ItemCode不像'R-%'和ItmsGrpCod ='105'由ItemCode排序;

 设置@tot =(从@SCOREX中选择COUNT(*));
 设置@single = 1;

 
 WHILE(@single <= @tot)
      开始使用BOM(DB,Parent,Child,Level)为(
           选择(从@SCOREX中选择articolo,其中linenum = @single),T0。父亲父级,T0。代码子级,0级
           从ITT1 T0,其中T0.Father =(从@SCOREX中选择articolo,其中linenum = @single)
           联合所有
           选择(从@SCOREX中选择articolo,其中linenum = @single),T1。父亲,T1.Code,等级+1
           从Itt1 T1内部加入T1上的BOM T2。父亲= T2.Child)

 
           插入@BM
           选择T4。*从BOM T4选项(MAXRECURSION 90)
           设置@single = @single + 1
      结束

 选择A.DB,a.Parent,c.itmsgrpcod,a.child,B.itmsgrpcod,a.level
 来自@BM A在a.child = b.itemcode上的内部联接OITM B在a.Parent = c.ItemCode上的内部联接OITM C
 按a.DB,a.Level排序

 

然后,运行类似查询

从@BM中选择不同的A.Child,b.itemname。A.Child = b.ItemCode上的内部连接OITM B,其中b.ItmsGrpCod ='112'由A.child排序

我可以从物料清单中检索属于ItemGroup'112'的所有子物料代码...对于我来说,Wich是原材料...

换句话说,..对于物料组'105'的每个BOM表=>仅检索属于物料组'112'的子代码(在BOM表的每个级别中)。

现在..显然..不能在视图中使用..导致SQL SERVER在视图代码中不要"希望"参数。

有什么建议吗?

我在考虑一个功能...或一个SP ...但是我不确定这可能是正确的方法....

预先感谢

zhangjiyang1323
6楼-- · 2020-09-01 05:27

嗨,

只需在表值函数中的查询之上运行,并得到一些错误消息。 到目前为止,我从未在此功能下运行查询。

感谢与问候,

Nagarajan

小c菟菟
7楼-- · 2020-09-01 05:16

没有人可以帮助我??

????????

一周热门 更多>