防止SAP客户端掉线ABAP源代码

智慧灯盏SAP技术 2025-02-25 11:28:06 78阅读 举报
*防止掉线ABAP源代码
&---------------------------------------------------------------------*
*& Report ZONLINE
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZONLINE.
DATA: text TYPE string,
      time TYPE i.
time = 0.
IF sy-langu = '1'.
  CONCATENATE '请使用其他会话进行工作' '!' INTO text.
ELSE.
  CONCATENATE 'Please use another session for working' '!' INTO text.
ENDIF.

DATA:gt_info TYPE TABLE OF uinfo2,
      gv_num TYPE i.

"获取当前用户的会话数
CALL FUNCTION 'TH_LONG_USR_INFO'
  EXPORTING
    user      = sy-uname
  TABLES
    user_info = gt_info.
DESCRIBE TABLE gt_info LINES gv_num.

"对当前打开的会话数进行判断,如果只打开了一个,那么再另外打开一个新的会话供用户使用
IF gv_num = 1.
  CALL FUNCTION 'TH_CREATE_FOREIGN_MODE'
    EXPORTING
      client           = sy-mandt
      user             = sy-uname
*     TCODE            =
*     RETURN_ERROR     = 1
*     CREATE_EXCLUSIVE = 0
    EXCEPTIONS
      user_not_found   = 1
      cant_create_mode = 2
      OTHERS           = 3.
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.

ENDIF.

DO.
  CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
    EXPORTING
      percentage = time
      text       = text
    EXCEPTIONS
      OTHERS     = 1.
  time = time + 1.
  IF time = 101.
    time = 0.
  ENDIF.
  WAIT UP TO 10 SECONDS.
ENDDO.

版权声明:
作者:智慧灯盏
链接:https://www.erpcool.com/p/4c4aba8288467.html
来源:SAP技术
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以点击 “举报”


登录 后发表评论
0条评论
还没有人评论过~