ABAP Dialog笔记详解编程语言

知识点

1.Screen(屏幕)

2.PBO(PROCESS BEFORE OUTPUT.)

3.PAI(PROCESS AFTER INPUT)

4.Module

5.GUI Title

6.GUI Status

一点一点的理解

1.上述6个对象都从属于程序(Report XXXXX),在Report定义的变量上述对象均能访问。

REPORT ZBC_LCL_DIALOG001. 
*定义类是内表的结构用以承接数据 
TABLES spfli. 
*定义ucommn类型字段,承接按钮事件 
DATA OK_CODE  TYPE sy-ucomm. 
 
PARAMETERS p_carr TYPE spfli-CARRID. 
parameters p_conn TYPE spfli-CONNID. 
 
call screen 100. 
 
INCLUDE zbc_lcl_dialog001_100_pbo. 
 
INCLUDE zbc_lcl_dialog001_100_pai.

2.Report调用Screen是通过屏幕号Call。屏幕元素可以通过设置断点方式查看。屏幕元素均有是否可见、命名、显示名称、是否只读等属性,还可以设置Gourp1/2/3/4属性,方便分组设置(比如多个字段一起只读)。屏幕元素赋值,可以通过在主程序(Report)中设置同名字段或者同名结构来赋值。

3.操作屏幕需定义PBO和PAI程序块,分别代表屏幕运行前加载和屏幕操作后执行代码。SAP提供快速子程序或者Module程序块生成方法。

PROCESS BEFORE OUTPUT. 
MODULE STATUS_0100. 
* 
MODULE GETDATA. 
Module SETSCREEN. 
 
PROCESS AFTER INPUT. 
MODULE USER_COMMAND_0100. 
MODULE EXIT.

4.Module可以放在不同的INCLUDE文件中,建议是按PBO和PAI区分放置,再在主程序中通过INCLUDE引入文件。

*----------------------------------------------------------------------* 
***INCLUDE ZBC_LCL_DIALOG001_100_PAI. 
*----------------------------------------------------------------------* 
*&---------------------------------------------------------------------* 
*&      Module  EXIT  INPUT 
*&---------------------------------------------------------------------* 
*       text 
*----------------------------------------------------------------------* 
MODULE EXIT INPUT. 
 
    LEAVE TO SCREEN 0 . 
 
ENDMODULE.                 " EXIT  INPUT 
*&---------------------------------------------------------------------* 
*&      Module  USER_COMMAND_0100  INPUT 
*&---------------------------------------------------------------------* 
*       text 
*----------------------------------------------------------------------* 
MODULE USER_COMMAND_0100 INPUT. 
 
   case ok_code. 
     when 'MOD'. 
     write 'MOD'. 
   ENDCASE. 
ENDMODULE.                 " USER_COMMAND_0100  INPUT

5.Title定义比较简单,在对象浏览器中右键创建即可,需要注意的是需要单独激活,可以右键选择激活也可以双击后在屏幕上激活。定义好的Title可以被PBO文件中的Module执行,例如“SET TITLEBAR ‘TITLE_100’.”。当然这个Module已经在屏幕的flow logic调用。

6.GUI Status 在对象浏览器中右键创建,可以定义成应用工具栏或者菜单中,详细定义见下图,需要注意的是需要单独激活,可以右键选择激活也可以双击后在屏幕上激活。定义好的Status 可以被PBO文件中的Module执行,例如“SET TITLEBAR ‘Status _100’.”。当然这个Module已经在屏幕的flow logic调用。

ABAP Dialog笔记详解编程语言

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/18277.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论