sap bapi 锁参数用法【转】

字段名


要被锁定的键必须在这里传递。

另一个参数X_ 定义了当每个锁字段 传递初始 值时锁的行为。如果给 和X_ 指定了初始值, 关于 的通用锁就会被初始化。如果 指定了初 始值而X_ 为X,锁就设置 为它实际的初始值。

传输锁的参数

当事务结束或者相应的DEQUEUE 函数模块被调用,锁就被 移除。然而,如果事务调用了更新子程序的话就不是这样 了,这时,参数必须检查锁是否已经被移除。

传输锁的参数

参数_SCOPE 控制了锁或者锁释放如果被传递给更新程序, 有以下选择:

_SCOPE = 1:锁和锁释放不传递给更新程序。当事务结束时锁 被移除。

_SCOPE = 2:锁或锁释放传递给更新程序。更新程序负责移除 锁。请求了锁的交互式程序不再对锁行为有影响。这是 ENQUEUE 函数模块的标准设置。

_SCOPE = 3:锁或锁释放也传递给更新程序。锁必须从交互式 程序和更新程序中同时移除。这是DEQUEUE 函数模块的标准 设置。

锁模式参数

参数MODE_ 定义了锁对象里的每个基础表tab。对于 这个基础表的锁模式可以用这个参数动态设置。这个参数的 可用值包括S(共享)、E(排他)、X(排他但不累积)。 在锁对象中创建表时指定的锁模式就是这个参数的缺省值, 但是如果有必要的话,这个缺省值可以在函数模块被调用时 被覆盖。

如果带有锁模式的锁通过调用函数模块DEQUEUE 被移除, 这个调用必须具有跟参数MODE_ 相同的值。

控制锁传输

参数_COLLECT 控制了锁请求或锁释放应该是直接执行还是 应该先被写入本地锁容器。这个参数具有下列值:

初始值:锁请求或锁释放被直接发送给锁服务器。

X:锁请求或锁释放被放在本地锁容器中。收集在这个锁容器中 的锁请求和锁释放可以在以后调用函数模块 FLUSH_ENQUEUE 时成组的发送给锁服务器。锁限制的行为(只对ENQUEUE)

ENQUEUE 函数模块还有一个参数_WAIT。这个参数决定了 当锁被限制时的行为。有以下选择:

初始值:如果锁尝试由于一个冲突锁而失败了,就会触发 FOREIGN_LOCK 的异常。

X:如果锁尝试由于一个冲突锁而失败了,锁尝试会等待一段时 间后再试。只有在首次锁尝试过后一定时间后才会触发 FOREIGN_LOCK 异常。等待时间和时间限制都由特征参数来 定义。

控制锁条目的删除(只对DEQUEUE)

DEQUEUE 还有一个参数_SYNCHRON,用来监控锁条目被 删除时的行为。

如果传递了X,DEQUEUE 函数会一直等待,直到条目被从锁 表中移除。

否则,它就异步删除,就是说,如果系统的锁表在锁被移除后 直接读取,锁表的条目可能依然存在。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/190059/viewspace-476617/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/190059/viewspace-476617/

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值