需要帮忙; 查询重复行。

2020-09-02 20:44发布

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

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


尊敬的专家,

我们已经通过使用查询生成器设计了此查询,并且在执行时,即使我们使用了" Distinct"功能,项目编号仍在重复。 请帮助我们。

SELECT DISTINCT T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T3 .OnHand,T0.Status,T1。 [ItemCode] = T3。[ItemCode] T1。[IssuedQty] <= 0,并且(T0。[Status] ='P'或T0。[Status] ='R')OR BY BY T0。[PostDate]

有人可以帮助我们吗?

问候。

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

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


尊敬的专家,

我们已经通过使用查询生成器设计了此查询,并且在执行时,即使我们使用了" Distinct"功能,项目编号仍在重复。 请帮助我们。

SELECT DISTINCT T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T3 .OnHand,T0.Status,T1。 [ItemCode] = T3。[ItemCode] T1。[IssuedQty] <= 0,并且(T0。[Status] ='P'或T0。[Status] ='R')OR BY BY T0。[PostDate]

有人可以帮助我们吗?

问候。

付费偷看设置
发送
6条回答
clever101
1楼 · 2020-09-02 21:31.采纳回答

嗨,

可能您有三个仓库,所以有一些可能性:

选项1:您可以显示仓库的代码,因为有3行是正确的

 SELECT DISTINCT T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T3  .OnHand,T0.Status,T1。[IssuedQty],T0.Comments,T3.WhsCode
 从OW0出发
 内联接WOR1 T1在T0.DocEntry = T1.DocEntry
 内部JOIN OITW T3开启T1。[ItemCode] = T3。[ItemCode],T1.warehouse = T3.WhsCode
 T1。[IssuedQty] <= 0且(T0。[状态] ='P'或T0。[状态] ='R')
 ORDER BY T0。[PostDate];
 

选项2:您可以对手头数量求和,除去不重复的数量并使用分组依据

选择T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T0。 状态T1。[IssuedQty],T0.Comments,sum(T3.OnHand)为数量
 从OW0出发
 内联接WOR1 T1在T0.DocEntry = T1.DocEntry
 内部JOIN OITW T3开启T1。[ItemCode] = T3。[ItemCode],T1.warehouse = T3.WhsCode
 T1。[IssuedQty] <= 0且(T0。[状态] ='P'或T0。[状态] ='R')
 按T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T0.Status,  T1。[IssuedQty],T0。评论
 ORDER BY T0。[PostDate];
 

选项3:您按特定的仓库代码进行过滤

 SELECT DISTINCT T0.DocEntry,T0。[DocNum],T0。[PostDate],T0.DueDate,T0。[ItemCode],T0。[PlannedQty],T1。[ItemCode],T1。[PlannedQty],T3  .OnHand,T0.Status,T1。[IssuedQty],T0.Comments,T3.WhsCode
 从OW0出发
 内联接WOR1 T1在T0.DocEntry = T1.DocEntry
 内部JOIN OITW T3开启T1。[ItemCode] = T3。[ItemCode],T1.warehouse = T3.WhsCode
 T1。[IssuedQty] <= 0且(T0。[状态] ='P'或T0。[状态] ='R')和T3.WhsCode ='PUTCODEHERE'
 ORDER BY T0。[PostDate]; 

希望这会有所帮助。

狮子座

Ps:我从查询中删除了第二个Join,因为未使用

DafaDDDa
2楼-- · 2020-09-02 21:35

Hi Mekhala P

如果您可以解释查询执行后期望的查询输出,这将有所帮助。 这将帮助我查看您当前的查询,并在需要时建议其他任何查询形式。

此致

Sam

微wx笑
3楼-- · 2020-09-02 21:16

你好 Mekhala P

OITW的问题,它包含所有仓库现有数量的物品。

您必须将T1的仓库代码与OITW T3的WhsCode一起加入

OITW T3开启T1。[ItemCode] = T3。[ItemCode]和T1.warehouse = T3.WhsCode

此致

Zuber Kazi

SAP小黑
4楼-- · 2020-09-02 21:18

问候Sam B,

上面的查询获取待定的生产订单列表,这些订单要从各个商店中释放输入物料。 这将通知用户,他/她是否可以根据输入零件的可用性从生产中释放并为输出零件创建问题。

致谢。

Tong__Ming
5楼-- · 2020-09-02 21:08

亲爱的利奥·马蒂奥利(

当天的问候。

您的第二个查询就像一个符咒。 感谢您的投入和帮助。

问题解决后,我们将关闭该线程。

致谢。

shere_lin
6楼-- · 2020-09-02 21:23

问候Zuber Kazi,

尝试您的建议,发现这些项目在连续的行中重复了三遍。

致谢。

一周热门 更多>