具有多个输入参数的SAP HANA存储过程接受多个值

2020-08-17 01:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在尝试实现一种存储过程,该存...

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

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


我正在尝试实现一种存储过程,该存储过程从接受多个值的多个输入参数读取数据。 依次检查这些值以从用户维护的表中删除数据。 IP值取自UI5条目。

从" schema1"中删除。" xxx.yyy.UI5.Hierarchy.V1 :: T_111",其中" ORG_ID"输入(:IP_ORG_ID)和"版本"输入(:IP_VERSION);

从" schema1"。" xxx.yyy.UI5.Hierarchy.V1 :: T_222"中删除,其中" ORG_ID" IN(:IP_ORG_ID)和" VERSION" IN(:IP_VERSION);

从" schema1"中删除。" xxx.yyy.UI5.Importables :: T_333",其中" ORG_ID" IN(:IP_ORG_ID)和" VERSION" IN(:IP_VERSION);

我无法使用APPLY_FILTER将多个输入用作串联字符串,因为sql过程中的DML命令不支持它

-DECLARE FILTER_ORG VARCHAR(5000):='在('||:IP_ORG_ID ||')'中的ORG_ID;

-DECLARE FILTER_VERSION VARCHAR(5000):='版本(('||:IP_VERSION ||')';

1条回答
Nan4612
2020-08-17 02:01

您好Rajdeep,

在过程中,对于输入参数,您需要声明为表类型而不是标量输入参数。 请参阅下面的示例脚本:-

 PROCEDURE"您的过程名称"
 (
 在IP_ORG_ID表(ORG_ID VARCHAR(50))中,
 在IP_VERSION表中(VERSION VARCHAR(50))
 )
 语言SQLSCRIPT
 如
 开始
 从" schema1"中删除。" xxx.yyy.UI5.Hierarchy.V1 :: T_111",其中" ORG_ID"位于
             (选择ORG_ID FROM:IP_ORG_ID)
 AND" VERSION" IN(从:IP_VERSION选择版本);
 END 

如果这符合您的要求,请接受请求。

一周热门 更多>