APPLY_FILTER:放置动态源

2020-09-07 07:48发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨朋友, 根据以下链接: ...

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

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


嗨朋友,

根据以下链接:

使用动态 Rich Heilman的SAP HANA过滤器中, APPLY_FILTER语句不使用动态SQL,并且不与EXEC语句关联,因此在使用APPLY_FILTER时应该没有相关的性能问题。

我有一个过程,其中有多个带有Exec语句的动态SQL。 因此,我需要对其进行优化。 但是,我的源代码恰好是一个计算视图,随条件的不同而变化,因此,我的APPLY_FILTER源代码也会动态变化。 POC如下所示,其中P_SOURCE_CV是基于某些参数的其他过程的输入。 尝试激活此过程时,出现错误-SAP DBTech JDBC:[1310]:不允许使用标量类型: P_SOURCE_CV:第9行第1行(在pos 183)

步骤" TEST_APPLYFILTER"(
  IN P_SOURCE_CV VARCHAR(400)
 )
 语言SQLSCRIPT
 SQL安全定义器
 如
 开始
 DECLARE V_FILTER VARCHAR(1000)默认'COMPANY_CD =``1001''';
 ex_products = APPLY_FILTER(:P_SOURCE_CV,:V_FILTER);
 选择* FROM:ex_products;
 END; 

请告诉我如何使用APPLY_FILTER实现上述方案。

谢谢

Gaurav

HANA 2.0 SP3

2条回答
Bunny_CDM
2020-09-07 08:45

当V_FILTER为固定值(COMPANY_CD = 1001)时,为什么需要APPLY_FILTER? 您不能简单地使用WHERE COMPANY_CD = 1001吗?

一周热门 更多>