如何避免锁定IBASE对象?

2020-09-17 06:47发布

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

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


嗨,专家

我在SAP CRM中有一个ABAP报告,该报告在一个/相同的IBASE下创建多个序列号组件。 每个序列号都会循环执行。

它成功在IBASE中创建了第一个序列号。 但是,有时第二个序列号会出现" Ibase锁定"错误。

如何避免这种锁定问题?

顺序如下:

1.首先,我使用FM'CRM_IBASE_CREATE'创建ibase。

2.然后,我使用FM'CRM_ICSS_CREATE_COMPONENT'在ibase中创建序列号。

3.然后,我使用FM'CRM_IBASE_COMP_CHANGE'将合作伙伴添加到组件中。

4.然后使用BOL查询更新组件的保修属性。

在BOL查询中,我最后使用以下几行

lr_bol_core-> modify()。
lr_transaction = lr_bol_core-> get_transaction()。
lr_transaction-> save(iv_force_save = abap_true)。
lr_transaction-> commit()。

请提出如何避免ibase锁定的建议? 基本上,所有步骤都必须同步/序列化。 我可以使用SET UPDATE TASK LOCAL吗? 如果是,我可以在哪里使用它?

谢谢

Gopal

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

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


嗨,专家

我在SAP CRM中有一个ABAP报告,该报告在一个/相同的IBASE下创建多个序列号组件。 每个序列号都会循环执行。

它成功在IBASE中创建了第一个序列号。 但是,有时第二个序列号会出现" Ibase锁定"错误。

如何避免这种锁定问题?

顺序如下:

1.首先,我使用FM'CRM_IBASE_CREATE'创建ibase。

2.然后,我使用FM'CRM_ICSS_CREATE_COMPONENT'在ibase中创建序列号。

3.然后,我使用FM'CRM_IBASE_COMP_CHANGE'将合作伙伴添加到组件中。

4.然后使用BOL查询更新组件的保修属性。

在BOL查询中,我最后使用以下几行

lr_bol_core-> modify()。
lr_transaction = lr_bol_core-> get_transaction()。
lr_transaction-> save(iv_force_save = abap_true)。
lr_transaction-> commit()。

请提出如何避免ibase锁定的建议? 基本上,所有步骤都必须同步/序列化。 我可以使用SET UPDATE TASK LOCAL吗? 如果是,我可以在哪里使用它?

谢谢

Gopal

付费偷看设置
发送
2条回答
野沐沐
1楼-- · 2020-09-17 07:16

Gopal,您好

您可以使用像这样的编码:

IF lr_transaction-> check_save_possible()EQ abap_true。

IF lr_transaction-> save()EQ abap_true。

lr_transaction-> commit()。

ELSE。

Lr_transaction-> rollback()。

ENDIF。

ENDIF。

这应该可以解决锁定问题。

谢谢

伊万

My梦
2楼-- · 2020-09-17 07:34

嗨伊万

谢谢您的回答。

但是我没有得到真正的帮助。

如果您能详细说明一点,那就太好了。

这实际上意味着什么? IF lr_transaction-> check_save_possible()EQ abap_true。

谢谢

Gopal

一周热门 更多>