公众号:SAP Technical
本文作者:matinal
 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分


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 弹出框总结的更多相关文章

  1. 04.LoT.UI 前后台通用框架分解系列之——轻巧的弹出框

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  2. ABAP分享一 弹出框函数的简单示例

    在开发中经常会使用到弹出框这个功能,在SAP中有很多函数可以实现类似的功能,这里介绍一个比较简单常用的函数  POPUP_TO_CONFIRM 下面是一个实现的简单示例: TABLES sscrfie ...

  3. 【ABAP系列】SAP ABAP POPUP弹出框自建内容

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP ABAP POPUP弹出框自 ...

  4. ABAP 弹出框 函数

    POPUP_GET_VALUES_USER_HELP 是一个和用户交互信息的函数,用户能够填写信息,并且我们还能够依据实际的需求对弹出框进行F1 F4 以及用户的需求进行增强.具体的实现能够參考系统标 ...

  5. JS组件系列——Bootstrap寒冬暖身篇:弹出框和提示框效果以及代码展示

    前言:对于Web开发人员,弹出框和提示框的使用肯定不会陌生,比如常见的表格新增和编辑功能,一般常见的主要有两种处理方式:行内编辑和弹出框编辑.在增加用户体验方面,弹出框和提示框起着重要的作用,如果你的 ...

  6. 小解系列-解决WebUploader在谷歌浏览器下弹出框打开慢,在Bootstrap模态框内部多次点击才能触发的问题

    WebUploader百度前端团队开源的上传组件,用起来感觉真心不错的,标题的两个问题是我实际使用过程中遇到的问题,经过百度和谷歌查到解决方案, 特分享一下,以供遇到此问题的童靴. 谷歌浏览器弹出框打 ...

  7. JavaScript插件——弹出框

    (JavaScript插件——弹出框) 前言 阅读之前您也可以到Bootstrap3.0入门学习系列导航中进行查看http://www.cnblogs.com/aehyok/p/3404867.htm ...

  8. 玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-1导入JavaScript插件

    导入JavaScript插件 Bootstrap除了包含丰富的Web组件之外,如前面介绍的下拉菜单.按钮组.导航.分页等.他还包括一些JavaScript的插件. Bootstrap的JavaScri ...

  9. Bootboxjs快速制作Bootstrap的弹出框效果

    Bootboxjs是一个简单的js库,简单快捷帮你制作一个Bootstrap的弹出框效果. 一.简介 bootbox.js是一个小的JavaScript库,它帮助您在使用bootstrap框架的时候快 ...

随机推荐

  1. gcc编译动态链接库

    以下是windows环境下用gcc编译动态链接库的尝试过程. 环境准备 编译使用的MinGW,64位的官网可以找到下载地址. 项目建立及代码编写 在任意地方新建一个目录,保存这个项目,然后新建一个c源 ...

  2. Vue基础第三章 - 计算属性

    1.计算属性介绍 在第二章中我们介绍了在Vue的{{}}中可以使用一些简单的表达式进行计算,但是当表达式过长或者逻辑过于复杂就会变得不易理解和维护,比如第二章的示例{{ text.split(',') ...

  3. 第04课:GDB常用命令详解(上)

    本课的核心内容如下: run命令 continue命令 break命令 backtrace与frame命令 info break.enable.disable和delete命令 list命令 prin ...

  4. Java JDK下载方法

    https://jingyan.baidu.com/album/574c5219fb033c2c8d9dc194.html?picindex=5  也可以参考这个 ‘’‘’ 大家下载的时候一定要按照步 ...

  5. java数据结构1--数组、排序和Arrays工具类

    数组:Array 数组的定义 数组的内存结构 数组定义常见问题 数组常见操作 Java参数传递问题--值传递 二维数组 1.数组概念 同一种类型数据的集合,可以是基本数据类型,也可以是引用数据类型. ...

  6. 《Head First 软件开发》阅读五

    结束开发循环:娟娟细流归大海 几乎完成了任务,而开发循环结束所要面对的问题是用户测试的安排.新的一轮重构和重新设计. 开发循环已经完成,但是还是有很多事情可以去做.系统测试必不可少,但是是由谁来做系统 ...

  7. 浅谈javaScript中的继承关系<一>

    // JavaScript Document //创建三个构造函数 function Shape(){ this.name='ahape'; this.toString=function(){retu ...

  8. 安装SQL2012出现[HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1

    本人安装SQL2012出现这个错误,找了三天三夜,终于把问题找出来,共享给有需要的人们,不用重新换系统 错误如下: 1,此问题是系统.net Framework版本冲突,首先下载.net Framew ...

  9. linux安装配置Redis,Swoole扩展

    我是使用的是lnmp环境(php5.6.3) 一.安装redis数据库(参考w3c手册) 下载地址:http://redis.io/download 本教程使用的最新文档版本为 2.8.17,下载并安 ...

  10. PHP基础教程 10款人气暴涨的PHP开源工具

    若想创建动态而又新颖的Web应用程序,PHP便是理想的选择.不用说,在Web开发世界里,PHP是最流行的语言之一.一些非常好用的PHP开源工具着实拯救了不少开发任务繁重的PHP开发 人员,减轻他们的开 ...