选择查询以从两个不同的表中获取合并的报告。

2020-08-22 01:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,专家 我们有两个表,一...

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

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


嗨,专家

我们有两个表,一个是库存表(有库存明细),另一个是交货单表(有交货明细),我必须从这两个表中获取记录以显示合并的库存报告,避免重复。

如下表所示,在库存中,我们有6个订单项具有不同的日期,交货单表中有2个订单项

通过从交货单表中的总交付数量中减去每个零件编号的总库存数量来获得合并的库存报告。

我们正在使用如下所示的查询,该查询在

如何编写包含两个不同表的两列相减的选择查询,由 Venkateswaran Krishnamurthy

选择PART_NO,USER_ID,SUM(QTY-PICK_QTY)作为TOTAL_QTY
 从(从INVENTORY_TABLE INV LEFT JOIN DELIVERY_NOTE_TABLE PICK选择SELECT INV.PART_NO,INV.USER_ID,INV.QTY,PICK.PICK_QTY
 ON INV.USER_ID = PICK.USER_ID
 AND INV.PART_NO = PICK.PART_NO
 投资数量> 0
      )GROUP BY PART_NO,USER_ID
 

但是,在"合并库存报告数量"的帮助下,我们得到的负值仍然很少。

我们正在使用SAP Enterprise Portal数据库迁移到HANA系统。

致谢

Govardan Raj

(22.7 kB)
4条回答
太Q了
2020-08-22 02:30

亲爱的Bret&Venkatesh,

感谢您的亲切答复,对不起,您的答复很晚。

1)您的示例代码在user_id和part_no上联接。 这是正确的吗,物品总是由将它们输入库存的同一用户交付的,或者您仅报告由接收该物品的同一人交付的库存? (我在这里假设是该列的含义)。 我怀疑user_id不应成为联接的一部分

答案:我们正在基于User_id和part_no联接,这是正确的,因为我们有多个经销商向我们购买产品并将其出售给 最终客户。经销商从我们那里购买产品时,他会在INVENTORY_TABLE上进行输入,当他将产品交付给最终客户时,则会在DELIVERY_NOTE_TABLE中进行输入。

2)date列背后的逻辑是什么? 交货必须始终大于等于库存行中的日期吗? 您是否想捕获所有不正确的实例? 当库存中的零件有多个行或多个交货时,由什么决定合并报告中的日期?

答案:是的,当多个交货时,基于合并报告是正确的 日期列是不正确的方式。

3)为什么当没有交货的部分时,part_no 102的数量在报告中减少到10?

< em>答案:很抱歉,它被错误地更新,已交付10数量的part_no 102,上面没有显示。

4)它可以帮助您查看负数的来源,如果 您可以查看联接在聚合之前生成的原始数据,并手动进行减法和求和:

答案:好


事实上,我会详细解释,

当经销商U1000向我们购买数量为10的part_no 102时 ,我们在INVENTORY_TABLE中输入一个条目,其中包含part_no,购买数量,日期以及经销商名称。

以及当他向最终客户交付其中的一部分时,会在另一个表D2D_INVENTORY_TABLE中进行输入。 该表仅在经销商交付给最终客户时才有一个条目,如果经销商没有交付,则没有条目。 假设如果经销商从我们这里购买了10份part_no 101的商品,并且尚未出售给任何最终客户,那么在INVENTORY_TABLE中将出现101项,而在D2D_INVENTORY_TABLE中我们将没有101项。

这两个带有表字段和条目的表都显示在快照中,

我们可以单独查询这两个表并获取合并的库存报告吗?



请提供帮助,谢谢。

致谢

Govardan。

一周热门 更多>