调用外部API时如何在GET方法中使用内存变量?

2020-08-31 12:54发布

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

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


大家好,

我正在开发一个简单的聊天机器人,该机器人可以在我们的S4本地系统上提供有关销售订单的信息。

连接beetwen convAI和在我们本地系统上发布的OData服务运行得很好,我试图从聊天中用户输入的SO编号开始提取特定SO的信息。

为此,我认为我在调用外部API时必须在GET方法中传递memory.salesorder-number。

我仍然无法理解的是如何在服务URL中放置一个变量以指定实体集的键。

我原本希望写这样的东西 https://my-machine/odata/SAP/ZINN_SALESBOT_DEMO_SRV/SalesOrderSet('{{memory.salesorder-number}}'),但我发现了 将符号" {"放在文本字段中会使整个网页永久冻结!

我想念什么吗? 通过内存变量为外部API的get_entity指定密钥的正确方法是什么?

非常感谢您的支持,

Valerio

(37.5 kB)

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

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


大家好,

我正在开发一个简单的聊天机器人,该机器人可以在我们的S4本地系统上提供有关销售订单的信息。

连接beetwen convAI和在我们本地系统上发布的OData服务运行得很好,我试图从聊天中用户输入的SO编号开始提取特定SO的信息。

为此,我认为我在调用外部API时必须在GET方法中传递memory.salesorder-number。

我仍然无法理解的是如何在服务URL中放置一个变量以指定实体集的键。

我原本希望写这样的东西 https://my-machine/odata/SAP/ZINN_SALESBOT_DEMO_SRV/SalesOrderSet('{{memory.salesorder-number}}'),但我发现了 将符号" {"放在文本字段中会使整个网页永久冻结!

我想念什么吗? 通过内存变量为外部API的get_entity指定密钥的正确方法是什么?

非常感谢您的支持,

Valerio

(37.5 kB)
付费偷看设置
发送
2条回答
me_for_i
1楼-- · 2020-08-31 13:13

你好Valerio,

我们也称为S/4后端系统,并且内存变量增强了我们的API URL。 结果看起来像这样:

https://OUR_HOST/{{memory.business_object.metadata.serviceURLBase}} {{memory.business_object.metadata.entitySet}}?$ filter =({{memory.filter.name}}%20eq%20% 27 {{memory.filter.value}}%27){{memory.select}}&$ format = json&$ top = 1


希望它能对您有所帮助。

此致

Michal

骆驼绵羊
2楼-- · 2020-08-31 13:17

嗨Michal,

非常感谢您的回答。

所以这意味着我正确理解了如何编写URL。

但是问题仍然存在,当我从键盘(或复制粘贴)输入图括号" {"在API Service配置的URL字段的任何位置时,整个CAI网页将永久冻结,这使我无法 单击页面的任何位置,直到我在浏览器中刷新页面。

这可能是网页的错误吗?

我在Chrome,Firefox和IE上尝试过,并且其行为始终相同。

我创建了此gif,以便您查看会发生什么情况:

https://imgur.com/a/Rvd3qiI

我首先尝试添加一个"("括号,并且比输入" {"并冻结所有内容更有效。

希望这有助于理解问题。

谢谢

Valerio

一周热门 更多>