前言部分
这一篇介绍两个知识点:
一个是在ABAP7.50以上版本中,使用CREATE DATA。
另一个是介绍ABAP7.50的INTERFACE。
希望读者看完这篇文章之后,对这两个概念不再陌生,知道如何使用及其使用原理。
创建数据对象
创建内部表和类型i的数据对象。
数据对象在使用之前直接创建,然后由引用变量初始化并传递给收集器。
通过解除引用数据引用来访问数据对象。
如果未指定任何TYPE或LIKE,则必须完全键入数据引用变量dref。
然后使用数据引用变量的静态数据类型创建数据对象。
来看下面的例子:
代码语言:javascript复制TYPES t_itab TYPE TABLE OF i WITH NON-UNIQUE KEY table_line.
DATA: tab_ref TYPE REF TO t_itab,
i_ref TYPE REF TO i.
IF tab_ref IS INITIAL.
CREATE DATA tab_ref.
ENDIF.
tab_ref->* = VALUE #( FOR j = 1 UNTIL j > 10 ( j ) ).
IF tab_ref IS NOT INITIAL.
IF i_ref IS INITIAL.
CREATE DATA i_ref.
ENDIF.
LOOP AT tab_ref->* INTO i_ref->*.
cl_demo_output=>write( |{ i_ref->* }| ).
ENDLOOP.
ENDIF.
cl_demo_output=>display( ).
CLEAR: tab_ref, i_ref.
注意点:
全局类的可见性部分以及功能模块和全局方法的参数接口也包含隐式增强点。
这些可以在类构建器或函数构建器中显示和增强。
AMDP方法没有任何隐含的增强点。
用户接口
对于用户对话框的执行,需要可以通过用户界面(UI)访问的输入和输出服务。
用户界面用于用户和程序之间的交互。
如果用户界面的某些部分显示在屏幕上的GUI窗口中,则这是图形用户界面(GUI)。
SAP GUI是特定实现使用dynpros执行基于对话框的应用程序,它作为底层是ABAP的软件组件安装在服务器上的展示层的。
它包含执行用户和程序之间对话框所需的所有控件元素。
我们来看一下图形,更加直接。
在屏幕上,SAP GUI在GUI窗口中显示dynpro(动态程序)的屏幕。
屏幕可以包含用于显示内容或用于接收用户动作的屏幕元素。
使用Screen Painter工具中的Layout Editor处理屏幕及其屏幕元素。
每个屏幕元素都具有在Screen Painter中静态预定义的属性,并且部分可以在ABAP程序中动态修改。
作为图形用户界面的另一部分,每个标准窗口都包含一个菜单栏,一个标准工具栏和一个应用程序工具栏。
显示为模式对话框的GUI窗口仅包含应用程序工具栏。条形图是ABAP程序的独立组件,并以GUI状态组合在一起。
此外,在设置GUI状态时将它们分配给dynpro。除了图形元素,功能键也是用户界面的一部分。
它们被定义为ABAP程序的独立组件,因此是GUI状态的一部分。
使用Menu Painter工具处理GUI状态的组件和GUI状态本身。
在大多数情况下,用户界面显示的控制元素与功能代码链接,可以在ABAP程序中进行评估。
可以在系统字段sy-pfkey中找到当前GUI状态的描述。
SAP GUI中的GUI窗口在具有标题栏和状态栏时完成。
标题栏也使用Menu Painter编辑,包含GUI窗口的标题。
状态栏显示在使用MESSAGE语句执行ABAP程序期间可以传输的信息。
此外,它还包含可以使用栏右侧的图标显示或隐藏的系统信息。