在EventHandler中升级BO实例

2020-09-07 09:20发布

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

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


我有一个嵌入式组件,需要向上插入BO实例-如果给定的备用键存在,则BO值将被更新,如果没有,则创建一个新实例。 EC处于隐藏状态-仅接收数据,无需用户输入即可执行upsert。

我已经创建了如下所示的EventHandler,执行以下步骤:

1。 ReadOrCreate BO操作使用BO的备用键来获取/创建实例
2。 一组数据操作,这些操作将映射到EC Inport的字段分配给BO
3根上的DataField。 最后,执行窗口操作以保存实例

对于create来说,这非常有效,但是,当它获取现有记录以进行更新时,只有一个字段会被更新-ActivityUUID。 其他所有字段均保持以前的值。 我不知道为什么!

以下是设置的屏幕截图:

数据模型:

ReadOrCreate操作:

(分配给ActivityUUID的)分配可以很好地用于创建或更新!

但是,所有其他(例如下面的ANI)仅适用于创建:

有人对我可能会出错的地方有任何想法吗?

谢谢,
西蒙(Simon)

(16.9 kB)

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

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


我有一个嵌入式组件,需要向上插入BO实例-如果给定的备用键存在,则BO值将被更新,如果没有,则创建一个新实例。 EC处于隐藏状态-仅接收数据,无需用户输入即可执行upsert。

我已经创建了如下所示的EventHandler,执行以下步骤:

1。 ReadOrCreate BO操作使用BO的备用键来获取/创建实例
2。 一组数据操作,这些操作将映射到EC Inport的字段分配给BO
3根上的DataField。 最后,执行窗口操作以保存实例

对于create来说,这非常有效,但是,当它获取现有记录以进行更新时,只有一个字段会被更新-ActivityUUID。 其他所有字段均保持以前的值。 我不知道为什么!

以下是设置的屏幕截图:

数据模型:

ReadOrCreate操作:

(分配给ActivityUUID的)分配可以很好地用于创建或更新!

但是,所有其他(例如下面的ANI)仅适用于创建:

有人对我可能会出错的地方有任何想法吗?

谢谢,
西蒙(Simon)

(16.9 kB)
付费偷看设置
发送
7条回答
哎,真难
1楼-- · 2020-09-07 09:56

嗨,

您可以在UI Designer中执行upsert操作,如下所示:

1。 触发事件处理程序以读取实例。 此事件可以与Inport的" OnFire"属性关联。

2。 在步骤1中创建的事件处理程序中,将type用作" Condition",并检查该字段是否为Binded。 如果没有,则创建一个实例,如下所示。

谢谢

Saurabh

Bunny_CDM
2楼-- · 2020-09-07 09:39

嗨,安德鲁·布兰克利

感谢您的回复-以下是更多背景信息:

我正在使用存储电话数据的自定义BO(CTI_Data),其工作方式如下:

1。 通过标准的C4C现场活动中心打进电话。 我为此添加了一个EC,用于从活动中心的公共出口接收数据。 EC链接到自定义CTI_Data BO

2。 来电始终具有票证ID,无论是新的还是现有的(例如,呼叫转移或呼叫者已在电话中键入其现有票证ID)

3。 CTI_Data BO具有票证ID作为备用密钥。 如果有新的票证通过,我们只需创建一个新记录并在其中存储所有电话数据。 如果通话中存在现有票证,我们想用该票证的新电话数据替换所有旧电话数据。

4。 因此,我的EC EventHandler应该执行以下操作:
-使用TicketID进行ReadOrCreate从CTI_Data BO中获取现有的TicketID记录(如果存在),或者如果不存在则使用该TicketID创建新记录
-然后将字段映射到EC入口 并在绑定到CTI_Data BO的字段上分配它们

如上所述,creates可以正常工作,但更新仅更新ActivityUUID!

将添加一些属性的屏幕截图

谢谢

Simon

嗨Simon,

我也遇到了同样的问题,并通过一些参考修正了自己。 请参考以下链接,该链接是我的非官方帐户

https://answers.sap。 com/questions/12650203/embedded-component-records-are-not-displaying.html

谢谢

Anand

SKY徐
4楼-- · 2020-09-07 09:41

ANI(绑定到BO)

ANI(绑定到进口)

樱桃小丸子0093
5楼-- · 2020-09-07 10:02

ActivityUUID(绑定到BO)

ActivityUUID(绑定到入口)

Climb_Ma
6楼-- · 2020-09-07 09:51

感谢此Saurabh Kabra ,那么您如何设想Update步骤的工作呢? 这样我们就可以为具有成功绑定的Read设置一个条件,但是我当时认为我将处于与我的解决方案相同的位置,在该解决方案中执行一些数据操作以将新值分配给已读取的BO, 而ActivityUUID是唯一有效的字段?

谢谢

Simon

一周热门 更多>