zoukankan      html  css  js  c++  java
  • ABAP modify screen:修改屏幕,实现隐藏、禁止输入字段

    Loop at screen会loop处理屏幕上的每一个组件,并对其做相应的处理。

    SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME.
    PARAMETERS S_DATE TYPE DATUM   DEFAULT SY-DATUM MODIF ID OO.
    SELECTION-SCREEN: END OF BLOCK B1.

    SELECTION-SCREEN: BEGIN OF BLOCK B2 WITH FRAME.
    SELECT-OPTIONS: S_DATE2 FOR SY-DATUM  MODIF ID PP.
    SELECTION-SCREEN: END OF BLOCK B2.

    SELECTION-SCREEN: BEGIN OF BLOCK B3 WITH FRAME.
    PARAMETERS : R1 RADIOBUTTON GROUP D1 DEFAULT 'X' USER-COMMAND SINGLECLICK,   

                          R2 RADIOBUTTON GROUP D1 .
    SELECTION-SCREEN: END OF BLOCK B3.

    选择r1 的时候只显示B1;r2时候只显示B2

    AT SELECTION-SCREEN OUTPUT.
      IF R1 = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'PP'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ELSEIF R2 = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'OO'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.

    • Modiy屏幕的时候,如果屏幕有必输字段则不能修改,只有把必输项输入值后才能修改屏幕,需要有所取舍;
    • 注意:

    PARAMETERS : R1 RADIOBUTTON GROUP D1 DEFAULT 'X' USER-COMMAND SINGLECLICK,  红色这一段话必须有,否则不能动态修改屏幕;选择一次单选框就会触发一次atselection-screen output,实现动态修改屏幕.

    • SCREEN结构解释:

    在SAP屏幕中,一个字段就像.NET中的一个控件,这个 字段对应一个SCREEN结构,就像控件的多个属性。

    SE11可以查看SCREEN结构中的字段,只是没有备注。

    名称                  长度       说明

    NAME               30          屏幕字段的名称

    GROUP1            3            属于字段组1的字段

    GROUP2            3            属于字段组2的字段

    GROUP3            3            属于字段组3的字段

    GROUP4            3            属于字段组4的字段

    ACTIVE             1            可见并准备输入的字段

    REQUIRED          1            字段输入是强制的,即该值为X是表示该字段必须输入

    INPUT               1            字段准备输入

    OUTPUT            1            字段仅用于显示

    INTENSIFIED      1           高亮显示字段

    INVISIBLE          1           禁用字段

    LENGTH             1           减少字段输出长度

    DISPLAY_3D       1           以三维框架显示字段

    VALUE_HELP       1           显示有值帮助的字段  

    上述长度为1的字段,=1表示有效,=0则相反。  

  • 相关阅读:
    Fiddler——若网模拟测试
    MySQL——concat / instr函数
    Centos7 + docker + Jenkins搭建及测试
    常用正则表达式
    mariadb配置文件优化参数
    Python小技巧整理
    部署zabbix3.2.7,升级到3.4、proxy部署
    zabbix3.4.x添加短信报警
    个人总结OLinux上安装oracle11G Data Guard
    LRM-00109: could not open parameter file '/u01/app/oracle/product/12.1.0/db_1/dbs/initepps.ora'
  • 原文地址:https://www.cnblogs.com/ruingy/p/3521047.html
Copyright © 2011-2022 走看看