|
wind_lin
你太辛苦了!
一针见血!
能不能再帮个忙呢?感激万分!
*&---------------------------------------------------------------------*
*& Report YTEST035
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT YTEST035.
*功能码返回值
DATA: OK_CODE TYPE SY-UCOMM,
SAVE_OK TYPE SY-UCOMM.
DATA: SGRP(20) TYPE C,
SMOD(1) TYPE C.
*是否修改
DATA:CANMOD(1) TYPE C.
*默认可以修改
CANMOD = 'X'.
*直接调用窗口
CALL SCREEN 160.
*&--------------------------------------------------------------------*
*& MODULE STATUS_0160 OUTPUT
*&--------------------------------------------------------------------*
*定义状态条,包括菜单、工具条按钮、系统按钮
*---------------------------------------------------------------------*
MODULE STATUS_0160 OUTPUT.
SET PF-STATUS 'STATUS1'.
*根据按钮确定字段组
SGRP = ''.
IF SAVE_OK = 'BTN1'.
SGRP = 'NO1'.
ENDIF.
*CHECKBOX转换
IF CANMOD = 'X'.
SMOD = '1'.
ELSE.
SMOD = '0'.
ENDIF.
*逐个扫描屏幕元素
LOOP AT SCREEN.
*如果是需要修改的组,更改变量,其他组不考虑,如果正式考虑先存储到变量
IF SCREEN-GROUP1 = SGRP.
SCREEN-INPUT = SMOD.
*更新到窗口元素变量
MODIFY SCREEN.
ENDIF.
ENDLOOP.
*逐个扫描屏幕元素
LOOP AT SCREEN.
*如果是需要修改的组,更改变量,其他组不考虑,如果正式考虑先存储到变量
IF SCREEN-GROUP2 = SGRP.
SCREEN-INPUT = SMOD.
*更新到窗口元素变量
MODIFY SCREEN.
ENDIF.
ENDLOOP.
蓝色字体是我新添加的,我的目的是在点击设置组2的时候组2的输入输出框变成灰色,可是现在不知道为什么没起作用。
ENDMODULE. "STATUS_0160 OUTPUT
*&--------------------------------------------------------------------*
*& MODULE CANCEL INPUT
*&--------------------------------------------------------------------*
*CANCEL MODULE 与屏幕逻辑流对应,退出程序
*---------------------------------------------------------------------*
MODULE CANCEL INPUT.
LEAVE PROGRAM.
ENDMODULE. "CANCEL INPUT
*&--------------------------------------------------------------------*
*& MODULE USER_COMMAND_0160 INPUT
*&--------------------------------------------------------------------*
*PAI
*---------------------------------------------------------------------*
MODULE USER_COMMAND_0160 INPUT.
SAVE_OK = OK_CODE.
CLEAR OK_CODE.
CASE SAVE_OK.
WHEN 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. "USER_COMMAND_0160 INPUT
[ 本帖最后由 woshiyiziyu 于 2009-7-13 11:14 编辑 ] |
|