问题:
我在自定义 的action 实现 method 附加了 EML execute activate,这样实际数据由草稿变成激活状态,但是 RAP 框架记录还是草稿状态,框架返回的数据就为空了.
有没有办法让 RAP 框架返回激活的数据记录,而不是空?
在自定义 Action 里执行 EML Activate 之后,如何让框架返回“激活态”的数据而不是空集
回答:
你描述的场景很典型:在自定义的 Action 实现 method 里执行了 EML execute activate
,数据库侧已经把草稿切换成了活动版本,但 RAP 运行时那一刻的上下文仍握着草稿语义,结果你的 result
形参或后续读取拿到的是空。
解决它并不靠玄学,核心在两步:拿到“激活后”的正确键,以及用一次明确的 EML 读取把活动版本回填进 Action 的返回参数。把这两步做好,Fiori Elements 或任何消费方都会立即得到最新的激活数据,而不是空白页。
为了让讨论可复用,下面把关键背景、出错根因、可选修复路径与完整代码范式逐一展开,并穿插真实项目里的小案例。涉及 RAP 与 EML 的概念,我会尽量引用公开资料作背书,便于你核验与团队内分享。RAP 官方文档明确指出:Activate
是一种 MODIFY
请求,它把草稿复制进活动缓冲并进入保存序列,相关的报错与消息