点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在从CPI-DS...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在从CPI-DS...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我正在从CPI-DS任务的IBP计算方案中提取数据。 如您所知,在从IBP提取数据时,我们需要小心,因为错误的选择查询会影响性能。 想象一下,我想使用" CUSTOMERID"上的where条件查询表。 该客户ID将通过全局变量$ CUSTOMERID作为CPI-DS任务的输入。 如果业务用户提供客户ID作为输入,则此方法很好。 将where条件下推到IBP,但是如果业务用户未对此参数输入,则无论customerid为null还是customerid不为null,cpi-ds仍应从IBP提取所有数据。 如何在CPI-DS中实现这一目标?
当然,当$ customerid为空时,我可以初始化标志$ inputgiven = 0,并使用以下where条件。
(0 = $ inputgiven或ibp.customerid = $ customerid)
但是这种情况不会将 ibp.customerid = $ customerid 下推到IBP,这会影响性能,因为IBP必须先查询所有数据并将其发送到CPI-DS,然后再发送到CPI-DS 应该在数据集上应用where过滤器。
创建多个数据流不是一个选择,因为我可能有很多其他情况,而且我无法为这些过滤器的每个组合都创建数据流。 它只是不可操纵的。
有什么想法吗?
关于,
砂纸
能否在预加载脚本中使用变量设置过滤器字符串,然后将该变量输入为(或部分) 的过滤条件? 例如:
假定您有一个默认的$ CUSTOMERID 空字符串,它将作为过滤器通过空字符串,从而使IBP的查询结果不受限制。 如果$ CUSTOMERID具有某个值,则可以使用ifthenelse的最后一个参数中内置的字符串。 然后,将字符串打印在跟踪日志中,以便您每次都知道如何处理作业逻辑。
一周热门 更多>