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





以下是一个对弹出框中的客户编码进行存在性检验的一个简单样例 





DATA:tab TYPE TABLE OF sval WITH HEADER LINE.

DATA: code  TYPE c.





CLEAR tab.

tab-tabname = 'KNA1'.

tab-fieldname = 'KUNNR'.

APPEND tab.





"弹出填写数据的框

CALL FUNCTION 'POPUP_GET_VALUES_USER_HELP'

  EXPORTING

    popup_title = '抬头'

    programname = 'ZTEST'

    formname    = 'TESTFORM'

  IMPORTING

    returncode  = code

  TABLES

    fields      = tab.





IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.





*&---------------------------------------------------------------------*

*&      Form  TESTFORM

*&---------------------------------------------------------------------*

*       检查客户编码是否存在

*----------------------------------------------------------------------*

FORM testform  TABLES   fields STRUCTURE sval

                    CHANGING error  STRUCTURE svale.

  DATA:l_kunnr TYPE kna1-kunnr.

  DATA:lw_kna1 TYPE kna1.

  READ TABLE fields INDEX 1.

  l_kunnr = fields-value.

  SELECT SINGLE * INTO lw_kna1 FROM kna1 WHERE kunnr = l_kunnr.

  IF sy-subrc <> 0.

*    Bitte geben Sie einen gültigen Lagerort an

    CLEAR error.

    error-errortab   = 'KNA1'.

    error-errorfield = 'KUNNR'.

    error-msgty      = 'I'.

    error-msgid      = '消息对象'.

    error-msgno      = '消息号'.

  ENDIF.

ENDFORM.   





附:

SAP对弹出框依据类型进行了分组  分成了SPO1 SPO2 ...

上述的有输入的属于SPO4的组 同一时候SAP系统中有一些这些分组的函数的例子函数。能够通过 RS+分组+* 进行搜索。如我们这里的是SPO4的 使用RSSPO4*进行搜索 有例如以下结果

其它的用户交互框能够通过一下程序进行学习 RSSPO4 *

RSSPO410                       函数模块 POPUP_GET_VALUES 的范例

RSSPO420                       函数模块 POPUP_GET_VALUES_DB_CHECKED 的范例

RSSPO430                       函数模块 POPUP_GET_VALUES_USER_CHECKED 的范例

RSSPO440                       函数模块 POPUP_GET_VALUES_USER_CHECKED 的范例

RSSPO450                       函数模块 POPUP_GET_VALUES_USER_BUTTONS 的范例

1、sap的函数组列表和用途说明

适用情况

Function group

提示用户将可能丢失数据

SPO1

提示用户对某个问题选择Yes或者No

SPO1

提示用户将可能丢失数据, 并询问用户是否继续操作

SPO1

提示用户在多个操作中选择一个操作

SPO2

提示用户是继续当前操作或者取消当前操作

SPO2

提示用户输入数据 (能够依据一个表检查或者不检查输入值)

SPO4

将数据显示给用户

SPO4

将具体数据显示给用户

SPO6

从列表中选择数据 SPO5

用可滚动的对话框显示数据给用户

STAB

从视图或者数据表中打印数据

STPR


SPO1                           迅速保存的会话框

POPUP_TO_CONFIRM               标准对话弹出消息

POPUP_TO_CONFIRM_LOSS_OF_DATA  返回后迅速确实会话框 (POPUP, CONFIRM)

POPUP_TO_CONFIRM_STEP          用此函数能够建立一个对话框用于询问用户是否运行某步操作,用户能够选 择Yes No或者Cancel。该函数能够传入一个标题和两行的文本(提示问题)。

POPUP_TO_CONFIRM_WITH_MESSAGE  类似POPUP_TO_CONFIRM_STEP,仅仅是多三行的文本错误诊断提示。 系统             在窗体上显示一个绿色问号图标。

POPUP_TO_CONFIRM_WITH_VALUE    用此函数能够建立一个对话框用于询问用户是否运行某步操作,该操作可能 会丢失数据,用户能够选择Yes No或者Cancel。该函数能够传入一个标题, 两行的文本(提示问题)和一个对象值(对象值将会插入在提示问题文本的 两部分之间)。

系统在窗体上显示一个绿色问号图标。

POPUP_TO_CONFIRM_WITH_VALUE_2  Do not use! Please use POPUP_TO_CONFIRM.

SPO2                           决定年龄的对话框

POPUP_TO_DECIDE                显示一个对话框。用户能够两个操作中的一个或者取消。能够传入三行提示文本。

POPUP_TO_DECIDE_WITH_MESSAGE   用于有诊断选项间的选择的对话框

SPO3                           用于输入数据的对话框

POPUP_TO_GET_ONE_VALUE         Pop-up window, in order to confirm user-defined processing step (CONF

POPUP_TO_GET_VALUE             POPUP for requesting a value

SPO4                           用于显示和请求的对话框

ALPHA_EXIT_FOR_TYPE_N_CONTROL

POPUP_GET_VALUES               对于显示和值请求的会话框, 没有检查

POPUP_GET_VALUES_DB_CHECKED    对于请求值的对话框, 预防检查 DB 表/视图

POPUP_GET_VALUES_SET_MAX_FIELD 为此组的对话框设置每一个对话框的字段最大数值

POPUP_GET_VALUES_USER_BUTTONS  用于要求值和提供用户button的对话框

POPUP_GET_VALUES_USER_CHECKED  对于请求值的对话框, 通过存在用户检查

POPUP_GET_VALUES_USER_HELP     请求值的对话框, 用户退出和帮助的调用

SPO5                           从列表选择的对话框

POPUP_TO_DECIDE_LIST           Dialog box for choosing from a list without diagnosis

SPO6                           显示文本的对话框

POPUP_DISPLAY_TEXT             文本显示对话框窗体

POPUP_DISPLAY_TEXT_USER_BUTTON Popup with user-defined pushbuttons to display a text

POPUP_DISPLAY_TEXT_WITH_PARAMS 用參数对话窗显示文本

SPO8                           Application Modules

POPUP_TO_DECIDE_LOCKED_DATA

ABAP 弹出框 函数的更多相关文章

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

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

  2. seajs配合spm应用之四弹出框

    前面描述了 seajs的弹出遮罩层, 还没讲到弹出框, 这里接着把那几个例子介绍完. 目前已经有的工作是, 点击toggle按钮,可以弹出一个背投一样的暗灰色遮罩层, 主要的作用就是遮住当前页面上所有 ...

  3. js值类型转换(boolean/String/number),js运算符,if条件,循环结构,函数,三种弹出框

    js值类型转换 number | string | boolean boolean类型转换 num = 0; var b1 = Boolean(num); console.log(b1) 转化为数字类 ...

  4. 5月12日上课笔记-js 弹出框、函数、程序调试、基本事件、浏览器对象模型

    一.弹出框 a.提示框 alert(); b.输入框 prompt(); c.确认框 confirm(); var flag= confirm("确认删除吗?"); 二.js程序调 ...

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

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

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

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

  7. angularjs 弹出框 $modal

    angularjs 弹出框 $modal 标签: angularjs 2015-11-04 09:50 8664人阅读 评论(1) 收藏 举报  分类: Angularjs(3)  $modal只有一 ...

  8. bootstrap中popover.js(弹出框)使用总结+案例

    bootstrap中popover.js(弹出框)使用总结+案例 *转载请注明出处: 作者:willingtolove: http://www.cnblogs.com/willingtolove/p/ ...

  9. 使用jsonp跨域调用百度js实现搜索框智能提示,并实现鼠标和键盘对弹出框里候选词的操作【附源码】

    项目中常常用到搜索,特别是导航类的网站.自己做关键字搜索不太现实,直接调用百度的是最好的选择.使用jquery.ajax的jsonp方法可以异域调用到百度的js并拿到返回值,当然$.getScript ...

随机推荐

  1. linux 共享内存 信号量 同步

    这篇文章将讲述别一种进程间通信的机制——信号量.注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物.有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信——使用信号.下面 ...

  2. FZU 1075 分解素因子【数论/唯一分解定理/分解素因子裸模板】

    [唯一分解定理]:https://www.cnblogs.com/mjtcn/p/6743624.html 假设x是一个正整数,它的值不超过65535(即1<x<=65535),请编写一个 ...

  3. 北冥有 Data,其名为鲲,鲲之大,一个 MySQL 放不下!

    千万量级的数据,用 MySQL 要怎么存? 初学者在看到这个问题的时候,可能首先想到的是 MySQL 一张表到底能存放多少条数据? 根据 MySQL 官方文档的介绍,MySQL 理论上限是 (232) ...

  4. 《Microsoft SQL Server 2008 Internals》读书笔记--目录索引

    http://blog.csdn.net/downmoon/article/details/5256548 https://sqlserverinternals.com/companion/

  5. mysql之创建数据库,创建数据表

    写在前面 项目中用到mysql数据库,之前也没用过mysql,今天就学下mysql的常用的语法,发现跟sql server的语法极其相似.用起来还是蛮简单的. 一个例子 1.创建一个名为School的 ...

  6. 如何让自己的程序支持iPhone5–RetinaImages

    我们知道如果想让程序的启动图像能够适应iPhone5(640X1136),那么我们需要把启动的图像命名以“-568h@2x”结尾的图片,那 么是不是程序中用到的所有图片都可以用这样的方式来命名,以适合 ...

  7. ajax跨域解决办法

    在使用jquery的ajax作请求时,http://127.0.0.1:8080,类似这样的一个本地请求,会产生跨域问题, 解决办法一: jsonp: var url= "http://12 ...

  8. VS2010 MFC中 使用CListCtrl的排序功能

    list 控件是creat的,不是拖在对话框上的.想使用CListCtrl的排序功能却犯了愁~~~ 还好找到方法,如下: .h文件里:afx_msg void OnLvnColumnclickList ...

  9. hduoj1285确定比赛名次

     确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  10. 2017.2.21 Java中正则表达式的学习及示例

    学习网站:菜鸟教程 http://www.runoob.com/java/java-regular-expressions.html 1 正则表达式的基本使用 (1)类 正则表达式并不仅限于某一种语言 ...