ABAP创建dialog维护自定义数据表实例

本文详细介绍了如何在ABAP中创建一个对话框来维护自定义数据表。首先通过SE11创建包含员工信息的自定义表,接着利用Table Control在对话框中展示和编辑数据。通过事务代码SE38创建程序,定义屏幕逻辑,并使用TableControl进行数据展示和交互。最后展示了完成的对话框效果。
摘要由CSDN通过智能技术生成

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'
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值