zoukankan      html  css  js  c++  java
  • Screen返回选择界面的问题

    自己写的Report,用到了自己定义的Screen,如何在任何一个Screen直接返回选择界面(1000)?
     
    可以用:      SET SCREEN 0.
                  LEAVE SCREEN.
    或者  :      LEAVE TO SCREEN 0 .
     
    但是,有时候不是返回选择界面,而是返回了调用这个Screen的地方。
    这是因为:
    LEAVE TO SCREEN scr. :Leaves the current screen and processes the screen scr.

    If scr = 0, processing in CALL mode continues after the CALL SCREEN statement. Otherwise, you branch to the transaction selection screen.

    所以,如果100调用200,不要用CALL,用Leave to screen 200 .就可以在200直接返回1000了。
     
     
    下面是一个例子:
    REPORT z_scm_ftp_manager NO STANDARD PAGE HEADING .
    DATA: ok_code LIKE sy-ucomm .
    SELECT-OPTIONS:
          s_date FOR sy-datum DEFAULT sy-datum .
    START-OF-SELECTION.
      CALL SCREEN 100.
    *&---------------------------------------------------------------------*
    *&      Module  USER_COMMAND_0100  INPUT
    *&---------------------------------------------------------------------*
    MODULE user_command_0100 INPUT.
      CASE ok_code.
        WHEN 'BACK'.
    *      SET SCREEN 0.
    *      LEAVE SCREEN.
          LEAVE TO SCREEN 0 .
        WHEN 'CALLSCR'.
          CALL SCREEN 200.
        WHEN 'LEAVESCR'.
          LEAVE TO SCREEN 200.

      ENDCASE.
      CLEAR ok_code .
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&---------------------------------------------------------------------*
    *&      Module  STATUS_0100  OUTPUT
    *&---------------------------------------------------------------------*
    MODULE status_0100 OUTPUT.
      SET PF-STATUS 'MAIN100'.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&---------------------------------------------------------------------*
    *&      Module  USER_COMMAND_0200  INPUT
    *&---------------------------------------------------------------------*
    MODULE user_command_0200 INPUT.
      CASE ok_code.
        WHEN 'BACKBTN'.
          SET SCREEN 0.
          LEAVE SCREEN.
      ENDCASE.
      CLEAR ok_code .
    ENDMODULE.                 " USER_COMMAND_0200  INPUT
    *&---------------------------------------------------------------------*
    *&      Module  STATUS_0200  OUTPUT
    *&---------------------------------------------------------------------*
    MODULE status_0200 OUTPUT.
      SET PF-STATUS space.
    ENDMODULE.                 " STATUS_0200  OUTPUT
  • 相关阅读:
    50个jQuery 插件可将你的网站带到另外一个高度
    Web 开发中 20 个很有用的 CSS 库
    【算法】1、约瑟夫环
    智造微博
    银河系中央超大黑洞可能是个虫洞 其连接着两个不同的时空。
    创意文案:我害怕阅读的人
    解决Oracle ORA-00984: column not allowed here
    舌尖上的程序员
    技术贴 本地代码与svn关联教程 svn upgrade问题解决
    Aimp3的播放列表 按评分排序 落雨
  • 原文地址:https://www.cnblogs.com/elegantok/p/1545576.html
Copyright © 2011-2022 走看看