如何操纵SCI流运行的消息处理状态?

2020-08-16 10:49发布

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

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


我们通过SAP CPI为我们的客户进行了一些API集成。 客户希望在SAP CPI的"监视器消息处理" GUI中快速识别错误的集成流程。 对于处于"失败"状态的运行,这很容易实现,因为这些失败的消息尝试被立即标为红色,并且也会显示在自己的块图块("失败的消息")中。

但是,如果我们使用自己的异常处理程序处理异常并将已同意的响应发送回调用客户端,则特定的集成流运行将获得状态COMPLETED("绿色")。 现在,从我们的角度来看,此类已处理的消息仍然是失败的请求,但很难在SAP CPI的"监视消息处理" GUI中进行标识。

我们的问题是:如何在异常处理程序中将内部消息状态设置为FAILED状态,但在响应中保留我们约定的自定义错误消息格式?

通过"消息处理日志" API,我们看到还存在一个属性" CustomStatus",该属性通常具有与属性" Status"相同的值。 从我们的角度来看,我们可以使用属性" CustomStatus"将消息标识为"失败"吗?如果可以,如何在集成流程中设置该属性?

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

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


我们通过SAP CPI为我们的客户进行了一些API集成。 客户希望在SAP CPI的"监视器消息处理" GUI中快速识别错误的集成流程。 对于处于"失败"状态的运行,这很容易实现,因为这些失败的消息尝试被立即标为红色,并且也会显示在自己的块图块("失败的消息")中。

但是,如果我们使用自己的异常处理程序处理异常并将已同意的响应发送回调用客户端,则特定的集成流运行将获得状态COMPLETED("绿色")。 现在,从我们的角度来看,此类已处理的消息仍然是失败的请求,但很难在SAP CPI的"监视消息处理" GUI中进行标识。

我们的问题是:如何在异常处理程序中将内部消息状态设置为FAILED状态,但在响应中保留我们约定的自定义错误消息格式?

通过"消息处理日志" API,我们看到还存在一个属性" CustomStatus",该属性通常具有与属性" Status"相同的值。 从我们的角度来看,我们可以使用属性" CustomStatus"将消息标识为"失败"吗?如果可以,如何在集成流程中设置该属性?

付费偷看设置
发送
6条回答
蓋茨
1楼 · 2020-08-16 11:36.采纳回答

您好弗兰克·怀登海恩

可以通过设置交换属性SAP_MessageProcessingLogCustomStatus来设置自定义状态。 您可以在您的异常子流程中完成该操作。

但是,您不能开箱即用地创建根据"自定义状态"过滤的图块。 您必须编写自己的UI。 Finny Babu ,这将是对Monitoring的很好补充。

另一个选项是将状态设置为"已升级"。 调用程序将得到很好的响应,并提供错误详细信息,您可以在"监视升级消息"中使用一个磁贴。

希望这会有所帮助,

巴拉

浮生未央
2楼-- · 2020-08-16 11:45

很高兴最终效果很好弗兰克·怀登海恩。 您可以在 GitHub存储库上以集成配方形式共享报告iFlow。 我相信集成商会对此表示赞赏。 :)

亲切的问候,

Bala

SC_Yao
3楼-- · 2020-08-16 11:36

Hello Frank,

在您的异常子流程中,添加Error end Event而不是Message End,这会将Message状态设置为Monitoring失败。

总体而言,您可以使用错误结束事件使消息状态变为FAILED。

关于此,

Sriprasad Shivaram Bhat

悠然的二货
4楼-- · 2020-08-16 11:38

您好,Sirprasad ,

非常感谢您的迅速答复。

是的,如果我们在异常子流程中使用"错误结束事件",我们将能够产生FAILED状态。

尽管如此,由本地异常处理程序进程(通过Groovy脚本)构造的自定义JSON响应将被忽略,并且我们再次以纯文本格式获得SCI的默认错误消息(例如,"发生内部服务器错误:MPL ID 失败的消息是:AF7p4-YZHUIuXqC7t1cgqWtD88JQ。有关更多详细信息,请检查尾部日志。")

亲切的问候,

弗兰克。

SKY徐
5楼-- · 2020-08-16 11:47

你好弗兰克,

在iflow中使用的发件人适配器是什么?

注意事项

Sriprasad Shivaram Bhat

派大星 ヾ
6楼-- · 2020-08-16 11:33

嗨,Sirprasad,

通常我们的客户通过HTTPS发送请求,因此我们正在使用HTTPS发送器适配器。 但是在某些情况下,我们还会使用计时器触发的集成流程。

亲切的问候,

坦率。

一周热门 更多>