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

关于SAP Router连接不稳定的改良

这个也是网上看来的,之前在用的时候也在想是不是建立一个长连接,就不至于断线。今天正好看到。

关于SAP Router连接不稳定的改良

我们在使用SAPRouter时经常会碰到断线,其发生原因有很多,如:网络不稳定、操作间隔时间过长等。鉴于此,通过一个程序,来改良一下SAP GUI 通过SAP Router连接的稳定性。

原理:定时触发GUI与服务器的交互,保持router的连通性;

操作:SE38运行程序Z_DX即可,保持此session,另外打开session进行操作;

优点:可以比较好的改良GUI通过router连接SAP服务器的稳定性,同时防止超时导致session被SAP服务器断开或者被router断开;占用资源较少;

缺点:如果网络真的很差,会即刻断线,应该比QQ企鹅更敏感;多开一个session比较碍眼;

适用人群:通过sap router访问方式连接SAP 服务器。

*&---------------------------------------------------------------------*
*& Report ZGUI
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*

REPORT zgui.
DATA : text TYPE string,
       chr  TYPE char2,
       time TYPE i,
       perc  TYPE i.

DATA:sum  TYPE i,
     hour TYPE i,
     min  TYPE i,
     sec  TYPE I.

"设置持续连接时长
PARAMETERS: p_cycle TYPE i DEFAULT 2200 OBLIGATORY.

time = 0.
CONCATENATE 'Running(hh:mm:ss):' '00:00:00' INTO text.
WHILE time < p_cycle.
  perc = time MOD 100.
  CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
    EXPORTING
      percentage = perc
      text       = text
    EXCEPTIONS
      OTHERS     = 1.
  time = time + 1.
*  IF time = 10000.
*    time = 0.
*  ENDIF.

  sum = time * 5.
  IF sum MOD 3600 GE 1800.
    hour = sum / 3600 - 1.
  ELSE.
    hour = sum / 3600.
  ENDIF.

  IF ( sum MOD 3600 ) MOD 60 GE 30.
    min  = ( sum MOD 3600 ) / 60 - 1.
  ELSE.
    min  = ( sum MOD 3600 ) / 60.
  ENDIF.

  sec = sum MOD 60.

  chr = hour.
  IF hour < 10.
    CONCATENATE 'Running(hh:mm:ss):0' chr ':' INTO text.
  ELSE.
    CONCATENATE 'Running(hh:mm:ss):' chr ':' INTO text.
  ENDIF.

  chr = min.
  IF min < 10.
    CONCATENATE text '0' chr ':' INTO text.
  ELSE.
    CONCATENATE text chr ':' INTO text.
  ENDIF.

  chr = sec.
  IF sec < 10.
    CONCATENATE text '0' chr INTO text.
  ELSE.
    CONCATENATE text chr INTO text.
  ENDIF.

  WAIT UP TO 5 SECONDS.
ENDWHILE.


http://www.kler.cn/a/441740.html

相关文章:

  • 【Linux】环境变量
  • Unity新版InputSystem短按与长按,改键的实现
  • Excel 实现文本拼接方法
  • JavaScript学习笔记(1)
  • TCP断开通信前的四次挥手(为啥不是三次?)
  • 【回忆迷宫——处理方法+DFS】
  • unity 雷达
  • SQL Server 表值函数使用示例
  • 负载均衡oj项目:介绍
  • mybatis的优化和补充
  • vue3修改elementui-plus的默认样式的几种方法
  • 基于Springboot + vue实现的手机商城系统
  • 弹窗组件嵌套弹窗组件问题
  • 基于Spring Boot的停车场管理系统
  • windows C#-如何实现和调用自定义扩展方法
  • 利用编程获得money?
  • HP服务器开启性能模式
  • 访问控制列表ACL
  • MyBatis框架的入门
  • websocket 服务 pinia 全局配置
  • 【后端面试总结】线程间通信的方法、特点与实现
  • GLB格式转换为STL格式
  • MAC虚拟机上安装WDA环境
  • [创业之路-196]:华为成功经验的总结与教训简单总结
  • Docker 安装 Seata2.0.0 (快速配置)
  • Django基础 - 01入门简介