一、子屏幕区域控件
简述
子屏幕是一个独立的屏幕,显示在另一个(“主”)屏幕的区域中。 子屏幕上不能附带 OK_CODE 或 FCODE。 主屏幕本身的 OK_CODE 是子屏幕的 OK_CODE
实现
- 控件按钮
- 点击按钮绘制子屏幕区域,给子屏幕名称:SUBSCREEN01
- 代码实现
PROCESS BEFORE OUTPUT.
CALL SUBSCREEN SUBSCREEN01
INCLUDING 'ZBX_01' '0140' .
*语法含义:将程序ZBX_01内的0140子屏幕展示在SUBSCREEN01区域
PROCESS AFTER INPUT.
CALL SUBSCREEN SUBSCREEN01.
* PAI也需要调用SUBSCREEN01,因为要调用子屏幕屏幕的 PAI 流逻辑
二、Table Control控件
简述
表格控件是屏幕表格显示的对象,您可以将其添加到“屏幕绘画器”中的屏幕。
实现
屏幕控件,按照向导一步步操作即可完成。
语法
代码语言:javascript复制CONTROLS contrl TYPE TABLEVIEW USING SCREEN dynnr.
contrl 是 ABAP 程序在屏幕上的表控件的名称。 该控件允许 ABAP 程序读取编辑表控件的属性并影响该控件。 dynnr是需要定义名为contrl的表控件的dynpro的编号,可以为dynnr指定长度为4的文本或类型为n的常量。
代码语言:javascript复制GET CURSOR line <lin>.
ind = <table_control>-top_line <lin> - 1.
Read table <itab> index ind.
确定表控件的行。 SY-SUBRC 允许您检查光标是否放置在表格控件的一行中。 用于获取内部表的相应行.
代码语言:javascript复制GET CURSOR FIELD <f> LINE <lin> ...
PAI ,读取当前光标位置。
代码语言:javascript复制SET CURSOR FIELD <f> LINE <lin> [OFFSET <off>]
PBO ,将光标设置在表控件特定行的特定字段上。 使用可选的附加项 OFFSET ,可以按照设置光标位置中的说明在字段中输入光标的偏移量。