【学习系列】SAP RAP 13:行为定义-Business Event
前言
前一篇中简单介绍了关于行为定义中Side Effects的用法,本篇将介绍关于行为定义中Business Event(业务事件)的概念和用法,简单来讲是一种用于异步执行某些逻辑的机制,比如当订单状态发生变化时,自动触发事件发送邮件,自动触发某个后台作业等等之类的操作,但不需要等待对方的响应。
由于OP版本功能受限的原因,本例代码在公有云版本中进行演示。
正文
在行为定义中可以通过关键字event(可选是否具有参数)来定义事件,且只能为根节点定义事件,定义好事件之后,当变更内容保存到数据库时,在通过不可回滚点之后,会在保存序列中触发定义的事件。
事件消费有两种途径,一种是本地消费,一种是远程消费。
事件消费查阅到相关文档提到可以在2022版本之后的On Premise环境中使用,但奇怪的是在我当前的OP环境(2023版本)中无法触发本地消费,但在云环境可以触发,debug看了下两个版本经过的代码逻辑是不太一样的,可能需要打升级包才可以在OP环境中使用,也有可能OP版本只支持远程消费。
本例中针对本地消费的例子在云环境中进行说明(别担心,不需要手工从头开始创建所有对象