ABAP创建dialog维护自定义数据表实例
1. 首先创建一张自定义数据表
2.Table Control维护数据表
创建一张定义数据表
我们首先创建一个自定义表,员工基本信息表,包含字段员工编号,姓名,性别,学历,出生日期,入职时间,地址。
1. 首先登陆SAP客户端,在事务代码窗口输入se11
2.输入数据表名
3.创建字段名及类型
这里我们没有定义自定义的域和数据类型,采用了SAP中自带的类型,所以如果你想创建自定义类型,可以参考其他相关博客。
保存激活后我们的数据表就创建完成了。
创建Dialog和使用Table Control
首先,退回到外层,使用事务代码se38,进入程序创建模块,创建一个自己的程序。
定义初始变量及调用屏幕
创建屏幕
创建代码块
返回到主程序,双击创建的屏幕号,选择逻辑流,与上面创建代码块的方式一样,双击USER_COMMAND_0100,同样选择生成到主程序。
生成代码块,在生成的代码块中实现功能码对应的功能
保存激活主程序,可以先测试这几个按键是否能够使用。接下来就是创建屏幕了,双击屏幕号,进入下图界面
进入屏幕制作器,可以采取拖拽的形式制作屏幕,左边是控件
我们根据自己的需要选择控件,这里先设置几个控件
将输入框绑定好接受变量
设置按钮功能码
创建TableControl
点击控制,在屏幕区域拉出TableControl,弹出下图窗口
点击继续,若这里提示报错,那可能是你的主程序或屏幕忘记保存激活了,退回去保存激活。成功了会进入下图界面可以看到字段信息,我们选择好自己要显示的字段,点击继续,这里我选择了除了flag以外的所有字段
最终设计出的屏幕如下图:
关于Table Control的字段信息修改
设置完所有的按钮的名称和功能码,输入框的名称,修改完Table Control的表头信息后,保存激活,退回主程序,我们会发现主程序中生成了大量代码,这些我们都不要管,找到之前在主程序中生成的USER_COMMAND模块,添加如下代码:
保存激活,执行!这样就完成了一个简单的Dialog开发。
效果展示:
源码:
*&---------------------------------------------------------------------*
*& Report Y_G9Z4_7
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Y_G9Z4_7.
TABLES:YEMPLOYEE.
DATA OK_CODE TYPE SY-UCOMM.
DATA ITAB TYPE TABLE OF YEMPLOYEE WITH HEADER LINE.
DATA LS_ITAB TYPE YEMPLOYEE.
DATA INP_ID(6) TYPE C.
CALL SCREEN 0100.
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'S_MAIN'.
SET TITLEBAR 'T_MAIN'.
ENDMODULE. " STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0100 INPUT.
CASE OK_CODE.
WHEN 'BACK'OR'EIXT'OR'CANCEL'