ABAP选择屏幕(ACTIVE,INPUT,REQUIRED)

本文介绍了ABAP编程中关于屏幕参数的可见性设置(ACTIVE),以及必输性(REQUIRED)和可输性(INPUT)的示例,包括如何通过LIKE、OBLIGETORY、RADIOBUTTONGROUP和USER-COMMAND等指令来控制屏幕元素的显示和验证规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.可见性:ACTIVE

示例:

PARAMETERS:p_name LIKE tab-name MODIF ID m1,  

       p_age LIKE tab_age MODIF ID m2.       

PARAMETERS:
    p_radio1 RADIOBUTTON GROUP g1 USER-COMMAND sel DEFAULT 'X',  
    p_radio2 RADIOBUTTON GROUP g1.  

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.

    IF  p_radio1 EQ 'X' AND SCREEN-GROUP1 = 'M1'.

      SCREEN-ACTIVE = '1'.  "显示

      MODIFY SCREEN.

    ELSEIF  p_radio2 EQ 'X' AND SCREEN-GROUP1 = 'M2'.

      SCREEN-ACTIVE = '0'.  "隐藏

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

2.必输性:REQUIRED

示例:

PARAMETERS:p_name LIKE tab-name OBLIGETORY ,  "名字  OBLIGATORY必输,有勾且系统会自动校验

       p_age LIKE tab_age,  "年龄

       p_class LIKE tab_age,  "班级

       p_grade LIKE tab_age.  "分数

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.

    IF  SCREEN-NAME = 'P_AGE'.

      SCREEN-REQUIRED = '0'.  "不必输,没有勾

      MODIFY SCREEN.

    ELSEIF  SCREEN-NAME = 'P_CLASS'.

      SCREEN-REQUIRED = '1'.  "必输,有勾且系统自动校验,等价于OBLIGATORY

      MODIFY SCREEN.

    ELSEIF  SCREEN-NAME = 'P_GRADE'.

      SCREEN-REQUIRED = '2'.  "不必输,有勾,但系统不会自动校验,需要手动校验

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

3.可输性:INPUT
示例:

PARAMETERS:p_name LIKE tab-name,  "名字

       p_age LIKE tab_age.  "年龄

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.

    IF   SCREEN-NAME = 'P_NAME'.

      SCREEN-INPUT = '1'.  "可输入

      MODIFY SCREEN.

    ELSEIF  SCREEN-NAME = 'P_AGE'.

      SCREEN-INPUT = '0'.  "禁止输入

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值