一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现

作者:ABAP技巧与实战 约 5 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发
目录
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

Dylan [ ABAP 技巧与实战 ](javascript:void\(0\);)

一起学FPM系统是转载以前项目上一位同事的文章, 希望大家能多多支持,鼓励他持续把FPM开发的心得写出来,

让大家和我能够一起从无到有的学习在FPM框架中开发程序.

继续之前的DEMO实现一些新的小功能,续上一篇: [ SAP-ABAP-FPM 开发一个简单的FPM应用3_页面跳转

](http://mp.weixin.qq.com/s?__biz=Mzg4NDYxMjMyOQ==&mid=2247483938&idx=1&sn=c0f2069aa4efc6506eb61e1a11bd78f0&chksm=cfb4cfa4f8c346b2ac56114b75c9636792bc49e000b5890ed236179f481a1c0466500d8ec1d2&scene=21#wechat_redirect)

今天要新增2个按钮;点击按钮后弹出框可以二次确认。首先来看一下 看完这篇文档能做出的效果

点击保存按钮后询问是否确认

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

点击审批按钮后弹出框可以填写一些消息再进行确认

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

接下来我们看是如何实现的

首先要在之前的DEMO上添加2个按钮,把保存,审批两个按钮开放出来,具体的配置操作之前的几篇文章已有详细介绍,忘了的朋友可以回顾前文

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

先看一下保存按钮的弹出框

1.在类LIST UIBB对应的FeederClass中添加扩展的接口

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

2.实现方法IF_FPM_GUIBB_LIST_EXT~NEEDS_CONFIRMATION

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

3.代码实现如下

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

以上操作完成后,点击保存后询问是否确认的弹框就通过标准方法实现了。

接下来看审批按钮的弹出框

1.添加新页面,选择对话框

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

2.点击属性,可以看到按钮集,选择之后一些标准按钮就会带出来,有不需要按钮的弹出框这里也可以不选

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

3.接下来就是绑定一个FORM UIBB,

创建出对应的FeederClass YCL_FPM_DYLANTEST_APPROVE_FORM,

实现IF_FPM_GUIBB_FORM~GET_DEFINITION,添加一个字段做测试

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

4.在配置界面把刚添加的元素添加进来,加上对应的文本,这个操作和常规的dialog开发画的内容差不多

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

5.YCL_FPM_DYLANTEST_LIST中的PROCESS_EVENT方法写点击按钮之后的调用逻辑

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

6.回到新建的FeederClass: YCL_FPM_DYLANTEST_APPROVE_FORM

在GET_DATA中可以写如下逻辑,适用场景: 打开这个弹出框时要执行的业务逻辑

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

6.PROCESS_EVENT中CASE事件,无论是选择确认取消都会是'FPM_CLOSE_DIALOG'(弹出框关闭),我们可以根据lv_dialog_action的值判断是选择了哪个标准按钮然后写对应逻辑即可:

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

7.FLUSH方法可以获取到当前的内容

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

以上操作完成后功能已经可以实现了,我们来调试一下再次看一下需要关注的点

前台点击审批以后,进到当前的 YCL_FPM_DYLANTEST_APPROVE_FORM

GET_DATA,这里执行打开弹出框时的业务逻辑: 比如可以默认一些值,或者将前一个页面的一些数据带过来

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

填充一些内容点击确认

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

FLUSH方法中我们已经可以拿到所填的值了

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

再之后到了PROCESS_EVENT中执行确认后的业务逻辑了

一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图
一起学 FPM 之开发一个简单的 FPM 应用4_弹出框的实现 - 封面图

看完本文的DEMO后 ,感兴趣的朋友可以尝试结合前文的内容,实现弹框确认后跳转页面并将全局的数据交互起来。

ABAP技巧与实战

关于作者:ABAP技巧与实战

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

来源说明:本文内容由「一起学FPM之开发一个简单的FPM应用4_弹出框的实现.md」整理生成,仅用于内部技术分享与学习交流。