为了更改屏幕的属性,我们经常使用loop at screen. ... ... endloop.这里大家大家可能会感到疑惑,为什么可以loop一个结构,其实在内部是这样的:这条语句使得底层按先后顺序读取屏幕上面的控件信息(你在屏幕定义的第一个控件一般是在第3次循环的时候读入到screen结构中,头两次读的是和屏幕相关的系统自动定义的某些控件,至于是什么,大概是容器啊,系统命令相关,不甚清楚),而这些控件的相关信息就放在screen结构中,那到底到底如何做到的,我也很纠结。

下面着重讲解screen结构中的那些属性(很容易的不会详解):

Component

Length

Type

Meaning

Attribute

surname

132

C

Name of the screen field

控件名称

group1

3

C

Modification group 1

(下文详解)

group2

3

C

Modification group 2

(下文详解)

group3

3

C

Modification group 3

(下文详解)

group4

3

C

Modification group 4

(下文详解)

required

1

C

Field input is mandatory

必须输入值

input

1

C

Field is ready for input

可输入

output

1

C

Field is for display only

可输出

intensified

1

C

Field is highlighted

强调显示

invisible

1

C

Field is suppressed

隐藏文本

length

1

X

Field length

变量长度

active

1

C

Field is active

控件激活

display_3d

1

C

Three-dimensional box

3D方式显示

value_help

1

C

Input help button display

指定search help

request

1

C

Input exists

-

 

 

以下详解group1,group2, group3,group4的含义:

GROUP1 用户通过modify id定义的分组
GROUP2 如果屏幕元素来自于LDB那么该值是‘DBS’

GROUP3 根据不同类型的控件,该值会不同,具体如下

      BLK 代表控件类型SELECTION-SCREEN … BLOCK …: Block

      COF 代表控件类型SELECTION-SCREEN COMMENT … FOR FIELD 

      COM 代表控件类型SELECTION-SCREEN COMMENT: Comment

      HGH 代表控件类型SELECTION-OPTIONS: Interval upper limit

      ISX 代表控件类型PARAMETERS … AS SEARCH PATTERN:

      LOW 代表控件类型SELECTION-OPTIONS: Interval lower limit

      OPU 代表控件类型SELECTION-OPTIONS: Selection option icons

      PAR 代表控件类型PARAMETERS: Parameters

      PBU 代表控件类型 SELECTION-SCREEN PUSHBUTTON …: Pushbutton

      TAB 代表控件类型SELECTION-SCREEN TAB: Tab title

      TOT 代表控件类型SELECTION-OPTIONS: Text of interval upper limit

      TST 代表控件类型SELECTION-SCREEN … TABBED …: Tabstrip

      TXT 代表控件类型Selection text

      ULI 代表控件类型SELECTION-SCREEN ULINE: Horizontal Line

      VPU 代表控件类型 SELECT-OPTIONS: Pushbutton for multiple selection

GROUP4 预留给SAP系统内部使用,功能不详.