SAP ABAP - 锁定对象


Lock Object 是 ABAP Dictionary 提供的一项功能,用于同步多个程序对相同数据的访问。数据记录是在特定程序的帮助下访问的。SAP中使用锁对象来避免在数据库中插入或更改数据时出现不一致。要锁定其数据记录的表及其关键字段必须在锁定对象中定义。

锁定机构

以下是锁定机制完成的两个主要功能 -

  • 程序可以与其他程序就其刚刚读取或更改的数据记录进行通信。

  • 程序可以阻止自己读取刚刚被另一个程序更改的数据。

程序首先生成锁定请求。然后这个请求进入Enqueue服务器并在锁表中创建锁。Enqueue 服务器设置锁,程序最终准备好访问数据。

锁定请求

创建锁定对象

步骤 1 - 转到事务 SE11。将打开以下屏幕。

创建锁定对象

步骤 2 - 单击“锁定对象”单选按钮。输入以 E 开头的锁定对象名称,然后单击“创建”按钮。这里我们使用EZLOCK12。

步骤 3 - 输入简短描述字段并单击“表”选项卡。

步骤 4 - 在名称字段中输入表名称,然后选择锁定模式为写入锁定。

步骤 5 - 单击“锁定参数”选项卡,将出现以下屏幕。

锁定参数选项卡

步骤 6 - 保存并激活。自动生成2个功能模块。要检查功能模块,我们可以使用转到→锁定模块。

步骤 7 - 单击“锁定模块”,将打开以下屏幕。

锁功能模块

锁对象创建成功。

锁定对象中包含的表的关键字段称为锁定参数,它们用作功能模块中的输入参数。这些参数用于设置和删除由锁对象定义生成的锁。