文章目录
- 使用Tabstrip控件实现分页签效果
- 标签页的修改
- 使用Table Control控件实现表单输出
- 表格控件
- 使用向导创建Table Control
- Table Control列的修改
用户通过界面输入数据,数据通过屏幕控件传递到ABAP/4程序中的变量,程序在PBO中准备数据并显示界面,用户回车后,PAI处理用户输入的数据,按顺序依次执行PAI中MODULE,并将结果反馈到界面。
使用Tabstrip控件实现分页签效果
Tabstrip可以实现在某个界面中,通过tab页的形式来显示多个界面
构成:按钮及子界面区域
1.创建Tabstrip Control
输入Tabstrip Name:Tabstrip Control控件名称(例:TS_TAB)
2.输入需要创建的各个tab页的描述
3.设定各tab页的名称,及相应的子界面编号
4.设定各部分代码进入的Include程序
激活程序后,可以查看到程序中增加了子界面的编号,可以依次进入界面
修改界面格式:设置方式与主界面相同,但不能设置GUl Status和GUI TITLE
标签页的修改
1.减少
选中标签页切换位置(Pushbutton),点击删除
在数据定义/PBO/PAI中做相应变更,也可不变更
2.增加
选择Pushbotton控件,在标签页旁边增加一个页面
设置按钮属性
增加数据定义/PBO/PAI处代码,可以直接参考复制
数据定义
PBO
MODULE TS_CTRL_ACTIVE_TAB_SET OUTPUT.
TS_CTRL-ACTIVETAB = G_TS_CTRL-PRESSED_TAB."已激活的分页签:默认值是第一个分页签
CASE G_TS_CTRL-PRESSED_TAB."点选了哪一个分页签
WHEN C_TS_CTRL-TAB1.
G_TS_CTRL-SUBSCREEN = '0110'."屏幕编号赋值
WHEN C_TS_CTRL-TAB2.
G_TS_CTRL-SUBSCREEN = '0120'.
WHEN C_TS_CTRL-TAB3.
G_TS_CTRL-SUBSCREEN = '0130'.
WHEN C_TS_CTRL-TAB4.
G_TS_CTRL-SUBSCREEN = '0140'.
WHEN OTHERS.
*&SPWIZARD: DO NOTHING
ENDCASE.
ENDMODULE.
PAI
MODULE TS_CTRL_ACTIVE_TAB_GET INPUT.
IF GV_UCOMM IS NOT INITIAL.
G_TS_CTRL-PRESSED_TAB = C_TS_CTRL-TAB3.
CLEAR GV_UCOMM.
ELSE.
OK_CODE = SY-UCOMM.
CASE OK_CODE. "根据点选按钮,给全局参数赋值
WHEN C_TS_CTRL-TAB1.
G_TS_CTRL-PRESSED_TAB = C_TS_CTRL-TAB1.
CLEAR GT_STATUS[].
WHEN C_TS_CTRL-TAB2.
G_TS_CTRL-PRESSED_TAB = C_TS_CTRL-TAB2.
WHEN C_TS_CTRL-TAB3.
G_TS_CTRL-PRESSED_TAB = C_TS_CTRL-TAB3.
CLEAR GT_STATUS[].
GT_STATUS = 'SAVE'.
APPEND GT_STATUS.
WHEN C_TS_CTRL-TAB4.
G_TS_CTRL-PRESSED_TAB = C_TS_CTRL-TAB4.
WHEN OTHERS.
*&SPWIZARD: DO NOTHING
ENDCASE.
ENDIF.
ENDMODULE.
使用Table Control控件实现表单输出
表格控件
- 当界面中查询多条数据时,可以使用TableControl控件来进行表单输出
- Table Control的行及列可以由以下元素构成:
KeyWords
Input/Output Fields
Radio Button/Radio Button Group
Checkbox
Pushbutton
使用向导创建Table Control
在程序中创建Table control使用的内表(向导会自动创建相应执行代码)
DATA GT_SCHOOL TYPE TABLE OF ZSCHOOL_JSM_01.
DATA GS_SCHOOL TYPE ZSCHOOL_JSM_01.
创建Table Control
选择表控件在屏幕画出表单
进入向导界面,输入表控制名称后继续
Name of Table Control:TableControl的名称(例:TC TAB)
使用Internal Program Table创建,选择程序中的内表
选择显示列
设定属性
Outputonly:只显示,不可输入
Input Control:可输入
With column header:带标题
Line selection col.:行可选中
Single:只能选中一行
Multiple:可以选中多行
设定按钮
Scroll:设定滚动条
Insert/delete line:插入/删除行按钮
Select/deselect all:选中所有/不选中按钮
设定各部分代码进入的Include程序
Table Control列的修改
1.增加
在之前定义的内表中增加字段
在布局中使用Input/Output Field增加列
Text控件增加描述
在PAI的Chain部分,增加相应字段
- 减少
在布局中选中input/output field,直接删除;
退出布局激活程序会报错
需要将PAI中的Chain部分的相应字段进行注释
激活程序后运行表单显示没有ZADD字段
3.属性修改
更改前
将Input/Output Field设成不可输入
激活后运行程序显示