点击此处---> 群内免费提供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) strong>
步骤" 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
当V_FILTER为固定值(COMPANY_CD = 1001)时,为什么需要APPLY_FILTER? 您不能简单地使用WHERE COMPANY_CD = 1001吗?
嗨,康拉德,
我以V_FILTER为例。 在现实世界中,COMPANY_CD和许多其他参数(例如FISCAL_PERIOD)将作为过程的输入,然后我们将必须构造字符串。
由于我的问题更多是在源头上,这就是为什么我没有过多强调过滤器。 您如何在APPLY_FILTER内部传递动态源P_SOURCE_CV是我的问题。
谢谢
Gaurav
一周热门 更多>