【ABAP系列】SAP ABAP POPUP_TO_CONFIRM 弹出框总结

前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
* TITLEBAR = ' '
* DIAGNOSE_OBJECT = ' '
TEXT_QUESTION =
* TEXT_BUTTON_1 = 'Ja'(001)
* ICON_BUTTON_1 = ' '
* TEXT_BUTTON_2 = 'Nein'(002)
* ICON_BUTTON_2 = ' '
* DEFAULT_BUTTON = '1'
* DISPLAY_CANCEL_BUTTON = 'X'
* USERDEFINED_F1_HELP = ' '
* START_COLUMN = 25
* START_ROW = 6
* POPUP_TYPE =
* IV_QUICKINFO_BUTTON_1 = ' '
* IV_QUICKINFO_BUTTON_2 = ' '
* IMPORTING
* ANSWER =
* TABLES
* PARAMETER =
* EXCEPTIONS
* TEXT_NOT_FOUND = 1
* OTHERS = 2
POPUP_TO_CONFIRM in ECC600 have to be used instead of the obsolete function module: POPUP_FOR_INFO
POPUP_TO_CONFIRM_LOSS_OF_DATA
POPUP_TO_CONFIRM_STEP
POPUP_TO_CONFIRM_WITH_MESSAGE
POPUP_TO_CONFIRM_WITH_VALUE
POPUP_TO_CONFIRM_WITH_VALUE_2
POPUP_TO_DECIDE
POPUP_TO_DECIDE_WITH_MESSAGE Even if most of these function modules are obsolete also in SAP 4.7, I would like to analyze it because are largely used. Below for each obsolete function module I give the new coding (default use) through POPUP_TO_CONFIRM.
1. POPUP_FOR_INFO:
CALL FUNCTION 'POPUP_FOR_INFO'
EXPORTING
INFO1 = text-
TEXTLINE1 = text-
TITEL = text-.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
TEXT_QUESTION = text-
DISPLAY_CANCEL_BUTTON = ' '.

2. POPUP_TO_CONFIRM_LOSS_OF_DATA:
CALL FUNCTION 'POPUP_TO_CONFIRM_LOSS_OF_DATA'
EXPORTING
TEXTLINE1 = text-
* TEXTLINE2 = ' '
TITEL = text-
* START_COLUMN = 25
* START_ROW = 6
* DEFAULTOPTION = 'N'
* IMPORTING
* ANSWER =
.

CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
DIAGNOSE_OBJECT = 'CACS_CONFIRM_LOSS_OF_DATA'
TEXT_QUESTION = text-
DISPLAY_CANCEL_BUTTON = ' '
POPUP_TYPE = 'ICON_MESSAGE_WARNING'.

3. POPUP_TO_CONFIRM_STEP:
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
* DEFAULTOPTION = 'Y'
TEXTLINE1 = text-
* TEXTLINE2 = ' '
TITEL = text-
* START_COLUMN = 25
* START_ROW = 6
* CANCEL_DISPLAY = 'X'
* IMPORTING
* ANSWER =
.

CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
TEXT_QUESTION = text-.

4. POPUP_TO_CONFIRM_WITH_MESSAGE:
CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'
EXPORTING
* DEFAULTOPTION = 'Y'
DIAGNOSETEXT1 = text-
* DIAGNOSETEXT2 = ' '
* DIAGNOSETEXT3 = ' '
TEXTLINE1 = text-
* TEXTLINE2 = ' '
TITEL = text-
* START_COLUMN = 25
* START_ROW = 6
* CANCEL_DISPLAY = 'X'
* IMPORTING
* ANSWER =
.

CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
DIAGNOSE_OBJECT = 'Z_CONFIRM_WITH_MESSAGE'
TEXT_QUESTION = text-.

Z_CONFIRM_WITH_MESSAGE should be created as shown in image below from Transaction SE61

5. POPUP_TO_CONFIRM_WITH_VALUE
This function creates a popup with a dynamic text with this pattern <TEXT_BEFORE><OBJECTVALUE><TEXT_AFTER>.
OBJECTVALUE could be any type of parameter that could be implicitly converted to a sequence of chars.
CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_VALUE'
EXPORTING
* DEFAULTOPTION = 'Y'
OBJECTVALUE = lv_value
* TEXT_AFTER = ' '
TEXT_BEFORE = text-
TITEL = text-
* START_COLUMN = 25
* START_ROW = 6
* CANCEL_DISPLAY = 'X'
* IMPORTING
* ANSWER =
* EXCEPTIONS
* TEXT_TOO_LONG = 1
* OTHERS = 2
.

DATA: TEXT_QUESTION() TYPE C,
TEXT_BEFORE() TYPE C,
TEXT_AFTER() TYPE C,
VALUE() TYPE C. VALUE = lv_value.
TEXT_BEFORE = text-.
TEXT_AFTER = text-. CONCATENATE TEXT_BEFORE VALUE TEXT_AFTER INTO TEXT_QUESTION SEPARATED BY SPACE. IF SY-SUBRC = .
* TO DO: text too long
ENDIF. CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
TEXT_QUESTION = TEXT_QUESTION.

DATA: PARAMETERS LIKE SPAR OCCURS WITH HEADER LINE. MOVE lv_value TO PARAMETERS-VALUE.
MOVE 'VALUE' TO PARAMETERS-PARAM. 'PARAM must have the same name of the symbol in the dialog text
APPEND PARAMETERS. CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-002
DIAGNOSE_OBJECT = 'Z_CONFIRM_WITH_VALUE'
TEXT_QUESTION = ''
TABLES
PARAMETER = PARAMETERS.
Z_CONFIRM_WITH_VALUE is a dialog text created with SE61 with a symbol named &VALUE&.

6. POPUP_TO_CONFIRM_WITH_VALUE_2
This function is very similar to POPUP_TO_CONFIRM_WITH_VALUE but it uses only one parameter to generate test before and test after value. Separating char is '&'.
In ECC6 this function module is no longer usable because it generates a dump.
See POPUP_TO_CONFIRM_WITH_VALUE.
7. POPUP_TO_DECIDE
This function creates a popup with customizable button. This function is a default in the new POPUP_TO_CONFIRM.
CALL FUNCTION 'POPUP_TO_DECIDE'
EXPORTING
* DEFAULTOPTION = '1'
TEXTLINE1 = text-
* TEXTLINE2 = ' '
* TEXTLINE3 = ' '
TEXT_OPTION1 = 'TEXT_OPTION1'
TEXT_OPTION2 = 'TEXT_OPTION2'
* ICON_TEXT_OPTION1 = ' '
* ICON_TEXT_OPTION2 = ' '
TITEL = text-
* START_COLUMN = 25
* START_ROW = 6
* CANCEL_DISPLAY = 'X'
* IMPORTING
* ANSWER =
.

CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = text-
TEXT_QUESTION = text-
TEXT_BUTTON_1 = 'TEXT_OPTION1'
TEXT_BUTTON_2 = 'TEXT_OPTION2'.

8. POPUP_TO_DECIDE_WITH_MESSAGE
This function is the same as POPUP_TO_DECIDE, but with a DIAGNOSE TEXT.
CALL FUNCTION 'POPUP_TO_DECIDE_WITH_MESSAGE'
EXPORTING
* DEFAULTOPTION = '1'
DIAGNOSETEXT1 =
* DIAGNOSETEXT2 = ' '
* DIAGNOSETEXT3 = ' '
TEXTLINE1 =
* TEXTLINE2 = ' '
* TEXTLINE3 = ' '
TEXT_OPTION1 =
TEXT_OPTION2 =
* ICON_TEXT_OPTION1 =
* ICON_TEXT_OPTION2 =
TITEL =
* START_COLUMN = 25
* START_ROW = 6
* CANCEL_DISPLAY = 'X'
* IMPORTING
* ANSWER =
.
See POPUP_TO_DECIDE and POPUP_TO_CONFIRM_WITH_MESSAGE.
Finally it's very important to know how to manage the answer. In the old popup answer is a char with 3 possible value: 'J' (Yes), 'N' (No) and 'A' (Abort); in the function module POPUP_TO_CONFIRM the output answer could be: 1 (Yes), 2 (No) and 'A' (Abort), so pay much attention when you make the substitution of obsolete function with the new one.
Suggestions and critics are welcome.
In the next article I would like to analyze the class CL_GUI_FRONTEND_SERVICES.
【ABAP系列】SAP ABAP POPUP_TO_CONFIRM 弹出框总结的更多相关文章
- 04.LoT.UI 前后台通用框架分解系列之——轻巧的弹出框
LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...
- ABAP分享一 弹出框函数的简单示例
在开发中经常会使用到弹出框这个功能,在SAP中有很多函数可以实现类似的功能,这里介绍一个比较简单常用的函数 POPUP_TO_CONFIRM 下面是一个实现的简单示例: TABLES sscrfie ...
- 【ABAP系列】SAP ABAP POPUP弹出框自建内容
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP ABAP POPUP弹出框自 ...
- ABAP 弹出框 函数
POPUP_GET_VALUES_USER_HELP 是一个和用户交互信息的函数,用户能够填写信息,并且我们还能够依据实际的需求对弹出框进行F1 F4 以及用户的需求进行增强.具体的实现能够參考系统标 ...
- JS组件系列——Bootstrap寒冬暖身篇:弹出框和提示框效果以及代码展示
前言:对于Web开发人员,弹出框和提示框的使用肯定不会陌生,比如常见的表格新增和编辑功能,一般常见的主要有两种处理方式:行内编辑和弹出框编辑.在增加用户体验方面,弹出框和提示框起着重要的作用,如果你的 ...
- 小解系列-解决WebUploader在谷歌浏览器下弹出框打开慢,在Bootstrap模态框内部多次点击才能触发的问题
WebUploader百度前端团队开源的上传组件,用起来感觉真心不错的,标题的两个问题是我实际使用过程中遇到的问题,经过百度和谷歌查到解决方案, 特分享一下,以供遇到此问题的童靴. 谷歌浏览器弹出框打 ...
- JavaScript插件——弹出框
(JavaScript插件——弹出框) 前言 阅读之前您也可以到Bootstrap3.0入门学习系列导航中进行查看http://www.cnblogs.com/aehyok/p/3404867.htm ...
- 玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-1导入JavaScript插件
导入JavaScript插件 Bootstrap除了包含丰富的Web组件之外,如前面介绍的下拉菜单.按钮组.导航.分页等.他还包括一些JavaScript的插件. Bootstrap的JavaScri ...
- Bootboxjs快速制作Bootstrap的弹出框效果
Bootboxjs是一个简单的js库,简单快捷帮你制作一个Bootstrap的弹出框效果. 一.简介 bootbox.js是一个小的JavaScript库,它帮助您在使用bootstrap框架的时候快 ...
随机推荐
- UI 设计中的渐变
简评: 渐变是通过两种或多种不同的色彩来绘制一个元素,同时在颜色的交界处进行衰减变化的一种设计.从拟物到扁平再到渐变,人们慢慢发现它能创造出从未有过的一种色彩感觉 -- 独特.现代和清爽.(本文译者@ ...
- python代码优化-----cpu和内存监控
1.memory_profiler可以监控代码的内存消耗及增长量,以下面的代码为例. 发现在for循环里增加了0.3MB,这个工具可以帮助我们定位内存泄露的问题. 2.profile与cProfile ...
- [BZOJ1299]巧克力棒(博弈论,线性基)
[BZOJ1299]巧克力棒 Description TBL和X用巧克力棒玩游戏.每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度.TBL先手两人轮流,无法操作的人输. ...
- ACR095 删一个求中位数 贪心求最大组合数 行列变换模拟(搜索)
A B #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) #d ...
- 清北学堂北京大学文宏宇神仙讲课day7
今天是最后一天 今天讲noip真题: ‘’ ‘’‘’ 课程终于还是上完了,收获比上一次多!
- C# 判断 List 是否存在某一个字段
foreach (var item in list_QuestionnaireSelect) { EntityQuestionnaireParticipantsReport _entityReport ...
- HDU-6669-Game(模拟,贪心)
链接: https://vjudge.net/problem/HDU-6669 题意: 度度熊在玩一个好玩的游戏. 游戏的主人公站在一根数轴上,他可以在数轴上任意移动,对于每次移动,他可以选择往左或往 ...
- 2019 第十届 SWPUCTF writeup(Pwn)
p1KkHeap 0.环境 1.文件信息 2.文件开启的保护 3.IDA分析 main函数 add show edit delete delete功能出现了指针悬浮的问题,配合上tcache,可以任意 ...
- 设计模式来替代if-else
前言# 物流行业中,通常会涉及到EDI报文(XML格式文件)传输和回执接收,每发送一份EDI报文,后续都会收到与之关联的回执(标识该数据在第三方系统中的流转状态).这里枚举几种回执类型:MT1101. ...
- Spring Boot 的各种start
新建一个springBoot项目时,你会选择很多依赖,在项目中的build.gradle中你会看见各种start,例如下边的代码: 今天就在这里列举一下各种start: 1.spring-boot-s ...