从OQUT和ORDR获取DocNum

2020-08-14 18:38发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我的水晶报表有以下查...

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

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


大家好,

我的水晶报表有以下查询;

 SELECT DISTINCT T0.custmrName,T0.callID,T0.BpShipAddr,T1.Name,T0.createDate,T0.subject,T0.manufSN,T0.internalSN,T0.itemCode,T0.itemName,CAST(T0。" 分辨率" AS varchar(MAX)),T0.BPContact,T0.BPCellular,T2.firstName,T2.lastName
 从OSCL T0
 左联接OSCT T1开启T0.callType = T1.callTypeID
 左联接OHEM T2 ON T0.technician = T2.empID
 左联接SCL4 T3开启T3.SrcvCallID = T0.callID 

现在,我还需要包括链接报价中的报价编号或链接销售订单中的销售订单。 如果不存在链接的报价,则应该从销售订单中获取DocNum,但是,如果存在报价,它将始终从链接的报价中获取它(如果两者都存在,则不会从销售订单中获取)。

我的问题是我需要对两个文档都使用INNER JOIN,否则如果存在多个文档,我会得到一条额外的记录;如果我对两个文档都使用了内部联接,那么它就不会显示任何信息。 最好的方法是什么?

我当前的解决方案(当时是一个可怕的解决方案)是对两个都使用子报表,但是如果它们都存在,则说明两者都不理想。

一如既往地感谢您的帮助。

3条回答
hengyuye
2020-08-14 19:06

嗨尼克,

您可以尝试在COALESCE函数中使用子查询。 像这样的东西:

 COALESCE((从OQUT中选择DocNum等),(从ORDR中选择DocNum等),-1)AS [报价/订单编号] 

致谢

约翰

一周热门 更多>