ABAP 屏幕开发仿采购订单

作者:斌将军 约 6 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, MM, 开发, 物料管理
ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

本文档通过一个简单的实例,仿照采购订单的界面,介绍屏幕开发。

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

## 3.1界面框架

从界面上看,整个界面框架分为四部分。抬头行,抬头页签,行项目,项目细节。其中抬头页签,行项目,项目细节三部分可以根据展开按钮实现展开和关闭,展开和关闭时按钮分别调用空界面和有值的界面,实现展开和关闭效果。

首先SE38创建程序,定义需要使用的内表,创建9000屏幕。

在9000屏幕中创建四个子屏幕

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

屏幕会自动生成调用的代码。其中SYST-REPID表示报表名称,GS_TITLE-DYNPRONR代表屏幕编号。

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义状态栏

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

按钮响应方法

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义内表和变量

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

创建9001子屏幕,抬头行字段(除了9000是常规屏幕,其他的屏幕都是子屏幕)

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

创建9003隐藏状态下的抬头界面

定义一个打开的按钮

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

创建9004打开状态下的抬头界面

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义页签

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

页签名称

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义标签名称

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

生成子屏幕和功能代码

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

点击继续完成即可

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义机构数据界面9005

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义批准策略界面9006

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

同样的步骤定义关闭状态的行项目界面9007

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义打开状态的行项目界面9008

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义表格

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

表格名称

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

此处要展示定义的内表GT_EKPO中的行

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

选择要展示的列

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

列可以输入,并将GT_EKPO表的CHECKBOX定义为选择框,并且可以多选

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

保持默认设置即可,点击完成

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义关闭详情界面9009

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义显示详情界面9010

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义一个下拉框,用于显示哪个行项目的详情数据

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

物料数据界面9011

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

采购订购历史界面9012

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

## 3.2初始化界面

初始调用的界面

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

查询需要展示的数据,放在GS_EKKO,GT_EKPO,GT_EKBE表中

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义各个关闭打开按钮的响应方法

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

在屏幕中可以控制要展示哪些子屏幕

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

## 3.3详情页面下拉菜单

通过GT_EKPO得到行项目,用作下拉框的值

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义下拉框逻辑流

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义下拉框的值

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

当点击下拉框菜单时

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

显示对应的EKPO的数据和行项目对应的采购订单历史数据

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

## 3.4编辑显示

在状态栏中,添加修改按钮

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

定义全局变量

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

当点击修改按钮时,修改全局变量

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

可编辑状态的界面,就调用相同的修改方法

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

根据全局编辑字段,修改界面的可编辑状态

ABAP 屏幕开发仿采购订单 - 封面图
ABAP 屏幕开发仿采购订单 - 封面图

## 3.5源代码

链接:https://pan.baidu.com/s/1d4oTx2IYS-p44B8dgqUa2g

提取码:ektq

斌将军

关于作者:斌将军

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「ABAP屏幕开发仿采购订单.md」整理生成,仅用于内部技术分享与学习交流。