如何在ABAP Restful应用编程模型中添加决定因素

84 阅读2分钟

ABAP Restful Application Programming Model中的确定功能用于在运行时确定某些东西,当Trigger条件匹配时。

决定权总是由业务对象框架调用。确定总是定义在BO的行为定义内,它属于为其创建行为定义的实体。

决定可以根据某些条件(决定条件)来计算数据或值。或者我们也可以这样理解:确定可以用来根据一些其他字段来确定一个字段的值。

例如:大学课程时间:课程时间可以根据课程名称来确定。

当Trigger Time匹配时,Determination被调用。这个触发时间可以是保存时、修改时

保存时:决定权将在保存数据时被触发,即当数据进入持久层时。

修改时。确定在修改操作中被触发。

触发字段:决定也可以由分配给业务对象实体的字段触发。

一步一步的指南

第1步

在 "行为定义 "中定义 "确定"。

语法:

确定 <方法名称> <触发时间> {字段 : <触发字段>}。

创建方法名称为updateCourseDuration 的决定,它将在保存时被触发,而触发字段是课程。因为我们想根据用户选择的课程来更新课程持续时间字段

第2步

决定被定义。现在按照下面的步骤来创建方法实现。

方法被创建。

第3步

现在我们要写一些代码,检查用户是否选择了哪个课程。基于用户选择的课程,我们将分配课程期限。

第1步:我们正在读取实体并获得课程字段的值。

第2步:我们正在检查课程字段的值。如果是计算机,那么我们将用5来更新courseDuration字段。

第3步:我们正在检查课程字段的值。如果是电子,那么我们就用3来更新课程期限字段。

最后选择 "全部激活"选项来激活 "行为定义 "中的决定性变化。

第4步

使用服务绑定运行应用程序

从F4帮助中选择课程,并点击保存按钮。

因此,一旦课程被改变为计算机,课程持续时间字段的值就会更新。

我们可以为多个实体定义多个决定。如果定义了多个决定,那么我们就不能知道哪个决定将首先被触发,如果它们在同一条件下被触发。