ABAP 選擇屏幕字段動態隱藏和顯示


TABLES : vbak,vbap,vbpa.

SELECTION-SCREEN BEGIN OF BLOCK b1  WITH FRAME TITLE text-001 .
SELECT-OPTIONS: s_vkorg FOR vbak-vkorg MODIF ID md1 DEFAULT'2100' OBLIGATORY,
                s_vstel FOR vbap-vstel MODIF ID md1,
                s_kunnr FOR vbak-kunnr MODIF ID md1,
                s_vdatu FOR vbak-vdatu MODIF ID md1,
                s_kunnrw FOR vbpa-kunnr MODIF ID md3,
                s_land1 FOR vbpa-land1 MODIF ID md3,
                s_vbeln FOR vbak-vbeln MODIF ID md1,
                s_posnr FOR vbap-posnr MODIF ID md1,
                s_matnr FOR vbap-matnr MODIF ID md1,
                s_uname FOR sy-uname MODIF ID md2 DEFAULT sy-uname,
                s_udate FOR sy-datum MODIF ID md2,
                s_uzeit FOR sy-uzeit MODIF ID md2.
PARAMETERS: p_check TYPE char01 MODIF ID md3 AS CHECKBOX USER-COMMAND u1.
PARAMETERS: p_file LIKE rlgrap-filename MODIF ID md3 .
PARAMETERS: p_log  TYPE char01 AS CHECKBOX USER-COMMAND u2 MODIF ID md1.
SELECTION-SCREEN END OF BLOCK b1 .

 

AT SELECTION-SCREEN OUTPUT.

***當P_LOG為‘x’時,MD1和MD2顯示,其他的隱藏,當P_LOG不為’X’時,MD2隱藏,其他的顯示
  IF p_log = 'X'.
    LOOP AT SCREEN. 
      IF screen-group1 = 'MD1' OR screen-group1 =  'MD2'.
        screen-active = '1'. “顯示
      ELSE.
        screen-active = '0'.”隱藏
      ENDIF.
      MODIFY SCREEN.
    ENDLOOP.
  ELSE.
    LOOP AT SCREEN.
      IF screen-group1 = 'MD2'.
        screen-active = '0'. ”隱藏
      ELSE.
        screen-active = '1'. “顯示
      ENDIF.
      MODIFY SCREEN.
    ENDLOOP.
  ENDIF.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM