这个程序比较简单,也没太多的知识点,在此就不介绍了,程序如下:
*&---------------------------------------------------------------------*
*& Report ZTEST_SELECT_SCREEN
*&
*&---------------------------------------------------------------------*
*& Create By : flying
*& Create Date : 2009-11-25
*& descriptions : 测试隐藏/显示选择屏幕
*&---------------------------------------------------------------------*
REPORT ZTEST_SELECT_SCREEN.
tables : mbew,
ekpo,
mseg.
*----------------------------------------------------------------------*
* selection-screen
* 选择屏幕
*
*----------------------------------------------------------------------*
*** 定义选择表的选择屏幕
selection-screen begin of block blk1 with frame title text -000 .
parameters : r1 radiobutton group grp user-command sele default 'X' , "这里没有user-command sele会不起作用的
r2 radiobutton group grp,
r3 radiobutton group grp.
selection-screen end of block blk1.
*** 定义表mbew的选择屏幕
selection-screen begin of block blk2 with frame title text -001 .
parameters : p_werks like mbew-bwkey modif id m1. "设置屏幕元素的组,方便操作
select -options: s_matnr for mbew-matnr modif id m1.
selection-screen end of block blk2.
*** 定义表ekpo的选择屏幕
selection-screen begin of block blk3 with frame title text -002 .
parameters : p_werks1 like ekpo-werks modif id m2.
select -OPTIONS s_matnr1 for ekpo-matnr modif id m2.
selection-screen end of block blk3.
*** 定义表mseg的选择屏幕
selection-screen begin of block blk4 with frame title text -003 .
parameters : p_werks2 like mseg-werks modif id m3.
select -options s_matnr2 for mseg-matnr modif id m3.
selection-screen end of block blk4.
*-----------------------------------------------------------------------*
* at selection-screen output
* 屏幕输出之前处理
*
*-----------------------------------------------------------------------*
at selection-screen output .
loop at screen .
case screen -group1. "屏幕组
when 'M1' .
if r1 eq 'X' .
screen -active = 1 . "设置屏幕显示
else .
screen -active = 0 . "设置屏幕隐藏
endif .
when 'M2' .
if r2 eq 'X' .
screen -active = 1 .
else .
screen -active = 0 .
endif .
when 'M3' .
if r3 eq 'X' .
screen -active = 1 .
else .
screen -active = 0 .
endif .
endcase .
modify screen . "修改选择屏幕属性
endloop .
执行效果如下:
因篇幅问题不能全部显示,请点此查看更多更全内容