尝试使用oDATA提交异步合并操作-对象锁定?

2020-09-25 07:49发布

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

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


嗨,

我正在云平台上运行JavaEE,并且试图通过OData更新ByD中的数据。 这很好,但是如果我尝试异步处理,我猜该对象已锁定并且失败。

示例:


库存任务:123


耗时的过程:

正在更新子项1->已完成,正在更新子项2->已完成,正在更新子项3->已完成,...

->有效

异步尝试

更新孩子1,2,3,...->完成

->不起作用

我已经阅读了有关eTag的信息,但我不知道这是否可以解决我的问题。

是否有可能以异步方式执行此操作,或者由于对象锁定而无法执行此操作吗?

谢谢。
菲利普

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

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


嗨,

我正在云平台上运行JavaEE,并且试图通过OData更新ByD中的数据。 这很好,但是如果我尝试异步处理,我猜该对象已锁定并且失败。

示例:


库存任务:123


耗时的过程:

正在更新子项1->已完成,正在更新子项2->已完成,正在更新子项3->已完成,...

->有效

异步尝试

更新孩子1,2,3,...->完成

->不起作用

我已经阅读了有关eTag的信息,但我不知道这是否可以解决我的问题。

是否有可能以异步方式执行此操作,或者由于对象锁定而无法执行此操作吗?

谢谢。
菲利普

付费偷看设置
发送
1条回答
黑丝骑士
1楼-- · 2020-09-25 08:36

通常建议在执行任何udpate操作之前先获取逻辑锁,以处理数据库中的不一致数据。

现在,ETag将检查是否有相同实体的修改,例如在更新具有其自身旧值的子代1时检查一致性。 通过这种方式,对旧数据的任何更新都会出错,并会通知最终用户。 在这里,我假设孩子1,孩子2,孩子3等都相关,并且对孩子1的更新也会锁定父对象,因此由于父对象被孩子1锁定,因此无法同时对孩子2进行更新。 ETag将无济于事,您只需要按顺序进行即可。

一周热门 更多>