当前位置: 首页 > news >正文

ABAP实战案例--获取当前数据由哪个用户锁住

1、业务场景:

A用户正在打开订单,订单已上锁;B用户打开时只允许查看并提醒由哪个用户正在操作该笔订单。

2、函数使用:ENQUEUE_READ

代码示例:

  DATA:LV_MESSAGE TYPE SY-MSGV1,LV_UNAME   TYPE UNAME.DATA:LV_GARG     TYPE SEQG3-GARG.DATA:LT_ENQ TYPE STANDARD TABLE OF SEQG3,LS_ENQ LIKE LINE OF LT_ENQ.ASSIGN COMPONENT 'DB_KEY' OF STRUCTURE GS_SETPLAN TO FIELD-SYMBOL(<FS_KEY>).CHECK SY-SUBRC = 0."判断主键是否上锁CALL FUNCTION 'ENQUEUE_EZRRE_D_SETPLAN'EXPORTING
*     MODE_ZRRE_D_SETPLAN       = 'E'MANDT          = SY-MANDTDB_KEY         = <FS_KEY>EXCEPTIONSFOREIGN_LOCK   = 1SYSTEM_FAILURE = 2OTHERS         = 3.IF SY-SUBRC <> 0.GV_LOCK = 'X'."已上锁CLEAR:LV_GARG.LV_GARG = SY-MANDT && <FS_KEY>. "当前客户端编号+Gname表主键CONDENSE LV_GARG NO-GAPS."移除空格CALL FUNCTION 'ENQUEUE_READ'EXPORTINGGCLIENT = SY-MANDT          "当前客户端"此处用户名必须置空,默认为当前用户名(导致只能查出当前用户上锁的数据)GUNAME  = ''GNAME   = 'ZRRE_D_SETPLAN'  "上锁对应的表GARG    = LV_GARGTABLESENQ     = LT_ENQ.IF SY-SUBRC <> 0.
* Implement suitable error handling hereENDIF.READ TABLE LT_ENQ INTO LS_ENQ INDEX 1.CLEAR:LV_UNAME.LV_UNAME = LS_ENQ-GUNAME.LV_MESSAGE = '用户' && LV_UNAME && '正在编辑该合同结算策划单,仅允许查看!'.MESSAGE LV_MESSAGE TYPE 'W'.ENDIF.          

此处注意参数:
GCLIENT : 当前客户端;
GUNAME : 此处用户名必须置空,默认为当前用户名(导致只能查出当前用户上锁的数据);
GNAME :数据上锁对应的表;
GARG :由当前客户端编号+Gname表主键拼接而成,此处为空时,结果LT_ENQ为该表对应全部被上锁的数据。

3、效果截图:

在这里插入图片描述

http://www.xdnf.cn/news/528103.html

相关文章:

  • 微前端记录
  • MFC 编程中 OnInitDialog 函数
  • YOLOV3 深度解析:目标检测的高效利器
  • vue3与springboot交互-前后分离【验证element-ui输入的内容】
  • w~自动驾驶~合集3
  • Linux内核深入学习(4)——内核常见的数据结构之链表
  • 超小多模态视觉语言模型MiniMind-V 训练
  • Java实现PDF加水印功能:技术解析与实践指南
  • leetcode239 滑动窗口最大值deque方式
  • 阿里云国际站与国内站:局势推进中的多维差异
  • TYUT-企业级开发教程-第四章
  • PyTorch图像建模(图像识别、分割和分类案例)
  • (1-5)Java 常用工具类、
  • 用 CodeBuddy 实现「IdeaSpark 每日灵感卡」:一场 UI 与灵感的极简之旅
  • 【Linux】守护进程
  • 数据中心 智慧机房解决方案
  • 力扣560.和为K的子数组
  • FLASHDB API分析
  • 爬虫攻防战:从入门到放弃的完整对抗史与实战解决方案
  • MacOS安装软件后无法启动报错:“已损坏,无法打开,你应该将它移到废纸篓“
  • MySQL企业版免费开启,强先体验
  • 如何使用VCS+XA加密verilog和spice网表
  • JVM的垃圾回收机制
  • 猎板PCB多层层压工艺能力及流程
  • Word2Vec 模型的工作原理
  • c#基础01(.Net介绍)
  • 图漾相机错误码解析(待补充)
  • 51单片机实现流水灯
  • 大数据hadoop小文件处理方案
  • 解锁MySQL性能调优:高级SQL技巧实战指南