Online程序学习(三)子屏幕区域控件 和Table Control控件

2022-05-11 10:13:10 浏览数 (1)

一、子屏幕区域控件

简述

子屏幕是一个独立的屏幕,显示在另一个(“主”)屏幕的区域中。 子屏幕上不能附带 OK_CODE 或 FCODE。 主屏幕本身的 OK_CODE 是子屏幕的 OK_CODE

实现

  1. 控件按钮
  1. 点击按钮绘制子屏幕区域,给子屏幕名称:SUBSCREEN01
  1. 代码实现
代码语言:javascript复制
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 ,可以按照设置光标位置中的说明在字段中输入光标的偏移量。

0 人点赞