使用字符串调用存储过程时出错-HANA 2 SPS02

2020-09-16 09:39发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨。 我写了一个SP,该SP接...

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

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


嗨。

我写了一个SP,该SP接受字符串并执行一条update语句。 2个字符串,一个用于SET'',一个用于WHERE。

UPDATE" sch"。" hana.data::Tables.details" SET :Upd_Str WHERE" LocationNo" IN(: LOC_VAL );

当我从XSJS调用此SP时

选项1。 result = spUpdate(updStrForSP,locStrForSP);

选项2。 result = spGetLocations('" Country" = \'CA \'," Brands" = \'brd1,brd2 \'," POBox" = \'500032 \'','\' 748631 \',\'746716 \'');

选项1出现语法错误,但是选项2正常运行。 但是选项1中的变量具有相同的值(调试时比较这些值)

我已经尝试了所有可能的组合来解决此问题。 但是语法错误仍然存​​在。

我感觉到的问题是由于特殊字符(\)。 没有它,我将无法运行SP。 这样做的原因是,我们必须更新1个或更多列,而这些列将是即时知道的。

感谢您的回复。

致谢

吉里


6条回答
路亽曱_Ryan
2020-09-16 10:09 .采纳回答

我创建了一个变量并创建了要传递给EXECUTE IMMEDIATE的字符串

upString:='更新"表" SET';

wholeString:=:upString || :inString;

立即执行(:wholeString);

这是我所做的唯一更改。 一切正常。

感谢您的回复

致谢

吉里

一周热门 更多>