问题描述
在ABAP中,我建立了3个屏幕:0100、0110、0120
屏幕0100是带有2个选项卡的Tabstrip控件(每个选项卡都包含一个子屏幕)。 屏幕0100呼叫屏幕0110
屏幕0110包含两个文本框:value1,value2和一个按钮 按下按钮会将我带到包含文本框结果的Tabstrip的tab2。
我想添加textbox(值1)和textbox(值2)的值,并将结果分配到textbox(结果)中。
问题)如何访问TabstripControlTab1-Subscreen-Textbox1(value1)和TabstripControlTab1-Subscreen-Textbox2(value2)中存在的值,并将计算出的值分配给TabstripControlTab2-Subscreen-Textbox1(result)?
我在程序的TopInclude中声明了与文本框控件同名的变量:value1,value2,结果均为整数类型,但不知何故文本框中的值不会反映到ABAP程序变量中。
Screen0110:
Screen0120:
代码: ***
Main Program:
INCLUDE Z_DEMOSCREEN_TOP. " global Data
*Screen 110 Include:
INCLUDE Z_DEMOSCREEN_STATUS_0100O01.
INCLUDE Z_DEMOSCREEN_USER_COMD_010I01.
*Screen 120 Include:
INCLUDE Z_DEMOSCREEN_STATUS_0110O01.
INCLUDE Z_DEMOSCREEN_USER_CMD_011I01.
START-OF-SELECTION.
CALL SCREEN 100.
*&---------------------------------------------------------------------*
*& Include Z_DEMOSCREEN_TOP Module Pool Z_DEMOSCREEN
*&
*&---------------------------------------------------------------------*
PROGRAM Z_DEMOSCREEN.
DATA:
FIRST_VALUE TYPE C,SECOND_VALUE TYPE I,RESULT TYPE I,ok_code LIKE sy-ucomm.
CONTROLS tabstrip TYPE TABSTRIP.
*****Screen 100:*****
PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
CALL SUBSCREEN TABSTRIP_TAB1_SUBSCR INCLUDING sy-cprog '0110'.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0100.
module USER_COMMAND_0100 input.
CLEAR: ok_code.
ok_code = sy-ucomm.
CASE ok_code.
WHEN 'TAB1' OR 'TAB2'.
tabstrip-activetab = ok_code.
WHEN 'ADD'.
tabstrip-activetab = 'TAB2'.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'CANCEL'.
LEAVE TO SCREEN 0.
WHEN 'EXIT'.
LEAVE TO SCREEN 0.
ENDCASE.
endmodule.
*** Screen 110***
PROCESS BEFORE OUTPUT.
MODULE STATUS_0200.
*
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0200.
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)