[ABAP] - 设置 GUI Status的正确方式

SAP GUI status是指SAP程序运行中菜单栏,标准工具栏,应用工具栏(menu bar, standard toolbar, application toolbar)的总和。在标准标准报表中,会默认带出default的GUI status。

[ABAP] - 设置 GUI Status的正确方式_第1张图片

 

但在实际的业务场景中,通常会需要对标准的toolbar进行增强,例如,增加一个自定义的按钮等。此时,就需要对GUI status进行手动的设置,其在程序中的关键字为 SET PF-STATUS 'status_name' ,通常位于INITIALIZATION事件中。

[ABAP] - 设置 GUI Status的正确方式_第2张图片

双击'status_name'可进入GUI status的创建页面,输入描述,确认。

[ABAP] - 设置 GUI Status的正确方式_第3张图片

在初始页面,可对Menu Bar,App Toolbar, Std Toolbar进行手动的编辑,并设定function key。具体的方式可参见此链接中的介绍,进行一步一步手动的设置。此种方式适合于较为复杂的定制化报表场景 (也即使用Menu Painter, Tx: SE41 ) 。

而在很多情况下,并不需要进行如此复杂的手动绘制工作, 例如仅需要在default的GUI status的基础上增加一个新的button,此时,调整GUI status的正确方式是,使用SAP提供的标准template,并在此基础上进行调整

[ABAP] - 设置 GUI Status的正确方式_第4张图片

选择模板的位置,Extras >> Adjust template

[ABAP] - 设置 GUI Status的正确方式_第5张图片

在标准模板中,提供了以下多种template,包含 - :

- List status

- Selctionscreen

- List viewer (ALV)

- Tree Status

- copy GUI status from other progam

根据不同的需要,可选择合适模板进行增强,这样省去了定义Fucnction Keys等重复性的工作。

[ABAP] - 设置 GUI Status的正确方式_第6张图片

 

举例:如果只需要在标准default的GUI bar上增加一个新的按钮,则可以选择模板 >> ‘Screen’. 

可见,使用模板后,标准的program menu已经自动带出,只需要手动定义一个新的按钮,并制定function key即可。

[ABAP] - 设置 GUI Status的正确方式_第7张图片

运行效果如下:

[ABAP] - 设置 GUI Status的正确方式_第8张图片

程序控制中可以使用如下语句,在AT SELECTION-SCREEN中, 捕捉按钮的点击事件。

AT SELECTION-SCREEN.

  CASE sy-ucomm.
    WHEN 'NEWBUTTON'.
* do your own logic 
  ENDCASE.

[ABAP] - 设置 GUI Status的正确方式_第9张图片

 

你可能感兴趣的:([ABAP] - 设置 GUI Status的正确方式)