Composite Provider中的左外部联接未提供期望的结果

2020-08-20 16:08发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好 我一直在寻找答案,...

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

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


大家好

我一直在寻找答案,但没有得到答案。 这是情况;

业务需求

我们的要求是合并来自InfoObject(0物料-物料主数据)和销售DSO(用于开票凭证的自定义DSO)的数据。 业务部门希望在报告中输入会计期日期范围和部门,并将结果显示为"在DSO中该日期范围内有销售的所有物料" +"在该部门中存在但我们没有销售的所有物料" 0材料)。

我们的解决方案

我们创建了一个带有左外部联接的复合提供程序(左侧为InfoObject,右侧为DSO),联接条件取决于物料。 我们在其上面进行了一个bex查询。

问题

当我们选择仅在DSO中而不在InfoObject中的日期范围(会计期间)时,我们仅获得结果的交集。 当我们选择两个字段之间的公共字段(例如DIVISION)时,我们将获得一个联接。 为了使连接正常工作,选择条件的字段在两个InfoProvider中是否必须相同?

您将对此有深刻的见解。

谢谢

相同

5条回答
compass1988
2020-08-20 16:26 .采纳回答

您可以使用HANA计算视图获得所需结果吗?

  • 在BW4中使用HANA从ADSO,InfoObject生成的视图
  • 在0MATERIAL上添加投影节点(PRO_MAT)
  • 在Sales DSO上添加投影节点(PRO_SALES_FILTER)(为"会计期间"和"部门"输入参数添加过滤器表达式)
  • 添加联接节点(JOI_MAT_SALES),在键0MATERIAL上联接,并将联接类型设置为外部(确保PRO_AMT位于联接的左侧)
  • 在"语义"节点中,添加两个输入参数IP_FISCPER_RANGE和IP_DIVISION ...在节点PRO_SALES_FILTER的过滤器表达式中引用这些输入参数

这应该会为您带来预期的结果。

一周热门 更多>