ABAP 弹出对话框
一组有用的用户交互窗口函数
显示多条消息
SAP系统用的是这个函数:C14Z_MESSAGES_SHOW_AS_POPUP
POPUP_TO_CONFIRM_LOSS_OF_DATA
显示有YES/NO的弹出窗口,提示用户未保存的数据将丢失
POPUP_TO_CONFIRM_STEP 提示是否确认操作的弹出窗口
*调用对话框函数
call function
‘POPUP_TO_CONFIRM_STEP’
EXPORTING
titel = text-m02
textline1 = l_msgtxt
cancel_display = space “不显示CANCEL按钮
IMPORTING
answer = l_answer.
POPUP_TO_CONFIRM_WITH_MESSAGE
可以显示定制的提示信息的确认窗口
POPUP_TO_CONFIRM_WITH_VALUE
显示确认用户对某个特定对象的操作的弹出窗口
POPUP_TO_DECIDE 将待确认选项以单选按钮的方式显示的弹出窗口
POPUP_TO_DECIDE_WITH_MESSAGE
带消息的确认窗口
POPUP_TO_DISPLAY_TEXT 显示多行信息的窗口
POPUP_TO_SELECT_MONTH 月份选择窗口
POPUP_WITH_TABLE_DISPLAY 有表格对象的确认窗口
在SAP的开发过程中,经常会用到对话框,SAP的系统有很多不同款式的对话框函数供你选择,把对话框用好,在开发的过程中会带来很大的便利,同时也让你的程序运行效果更漂亮哦,下面我介绍一下如何使用弹出对话框单选框列表列表供用户选择,效果如下所示:
程序如下:
*&---------------------------------------------------------------------*
*& Report ZTEST_POPUP
*&
*&---------------------------------------------------------------------*
*& Create By : flying
*& Create Date : 2009-11-25
*& Descriptions : 弹出类似单选框列表供用户选择
*&---------------------------------------------------------------------*
REPORT ztest_popup.
TABLES: spopli.
*----------------------------------------------------------------------*
* define internal tables
* 定义内表
*
*----------------------------------------------------------------------*
DATA: t_spop LIKE spopli OCCURS 0 WITH HEADER LINE. "定义供用户选择列表
*----------------------------------------------------------------------*
* define data
* 定义变量
*
*----------------------------------------------------------------------*
data: answer type string. "用于存储用户选择
*----------------------------------------------------------------------*
* start-of-selection
* 执行屏幕
*
*----------------------------------------------------------------------*
START-OF-SELECTION.
PERFORM frm_popup_to_select.
*----------------------------------------------------------------------*
* form frm_popup_to_select
* 弹出对话框
*
*----------------------------------------------------------------------*
FORM frm_popup_to_select.
REFRESH t_spop.
CLEAR t_spop.
t_spop-selflag = 'X'. "设置选中
t_spop-varoption = 'MBEW'. "设置显示的文本
t_spop-inactive = ''. "设置不可编辑
APPEND t_spop.
CLEAR t_spop.
t_spop-selflag = ''.
t_spop-varoption = 'EKPO'.
t_spop-inactive = ''.
APPEND t_spop.
CLEAR t_spop.
t_spop-selflag = ''.
t_spop-varoption = 'MSEG'.
t_spop-inactive = ''.
APPEND t_spop.
CALL FUNCTION 'POPUP_TO_DECIDE_LIST'
EXPORTING
cursorline = 1
mark_flag = ' '
mark_max = 1
start_col = 20 "设置开始的列
start_row = 7 "设置开始的行
textline1 = '请选择' "设置文本行内容1
* TEXTLINE2 = ' '
* TEXTLINE3 = ' '
titel = '测试用户选择' "设置标题
* DISPLAY_ONLY = ' '
IMPORTING
answer = answer "获得用户选择,这里返回的值对应是当前列表NO,比如第一个就返回1,第二个返回2。。。。。
tables
t_spopli = t_spop "设置选择列表
EXCEPTIONS
NOT_ENOUGH_ANSWERS = 1
TOO_MUCH_ANSWERS = 2
TOO_MUCH_MARKS = 3
OTHERS = 4
.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. "frm_popup_to_select
ABAP 弹出对话框的更多相关文章
- 10.JAVA之GUI编程弹出对话框Dialog
在上节基础上添加对话框显示错误信息. 代码如下: /*弹出对话框显示错误信息,对话框一般不单独出现,一般依赖于窗体.*/ /*练习-列出指定目录内容*/ import java.awt.Button; ...
- 【Telerik】弹出对话框RadWindow,确认删除信息
要做一个删除功能,但是删除前正常都要弹出对话框确认一下是否删除信息,防止误删信息.
- Response.Write("<script>alert('弹出对话框!')</script>") 后跟Response.Redirect("page.aspx");不能弹出对话框,直接跳转页面了 如何解?
Response.Write和Response.Redirect一起用的时候就会这样,write脚本和redirect脚本不能同时使用,这样不会执行脚本,最好使用ClientScript 改进方法: ...
- selenium移动div里面的滚动条,操作弹出对话框
还是使用js来移动 首先要定位到这个元素 倾向于使用js来定位元素,输入下面的脚本,按下回车键,即可在调试页面看到对应的div块$("div.table-responsive") ...
- java selenium (十一) 操作弹出对话框
Web 开发人员通常需要利用JavaScript弹出对话框来给用户一些信息提示, 包括以下几种类型 阅读目录 对话框类型 1. 警告框: 用于提示用户相关信息的验证结果, 错误或警告等 2. 提示框 ...
- AlertDialog.Builder弹出对话框
在Android中,弹出对话框使用AlertDialog.Builder方法. new AlertDialog.Builder(MainActivity.this).setTitle("本机 ...
- Android 手机卫士--弹出对话框
在<Android 手机卫士--解析json与消息机制发送不同类型消息>一文中,消息机制发送不同类型的信息还没有完全实现,在出现异常的时候,应该弹出吐司提示异常,代码如下: private ...
- jQuery学习笔记——弹出对话框
引用jQuery库文件的<script>标签,必须放在引用自定义脚本文件的<script>标签之前.否则,在编写的代码中将不能引用到jQuery框架 <script ty ...
- service里面弹出对话框
如何在service里面弹出对话框先给一个需求:需要在service里面监听短信的接收,如果接收到短信了,弹出一个dialog来提示用户打开. 看看效果图:(直接在主桌面上弹出) service中弹出 ...
随机推荐
- GDB配置与.gdbinit的编写
GDB配置与.gdbinit的编写 当 GDB(即 GNU Project Debugger)启动时,它在当前用户的主目录中寻找一个名为 .gdbinit 的文件:如果该文件存在,则 GDB 就执行该 ...
- Hibernate实体关系映射(OneToMany、ManyToOne双边)——完整实例
双边关系是最常见的配置.在多方有一方的引用,一方也有多方的引用.双边关系能够很方便地查询数据.看一个班级与学生的双边关系. 班级(Clazz类)与学生(Student类):一对多关系.班级中有学生属性 ...
- jquery qrcode参数
{ // render method: 'canvas', 'image' or 'div' render: 'canvas', // version range somewhere in 1 .. ...
- C++小项目:directx11图形程序(六):cameraclass
cameraclass是一个相机类,它的作用是生成非常重要的观察矩阵.本小节涉及到一点数学知识,相对前面需要只是填充,调用,算是比较有趣的吧. cameraclass.h #pragma once # ...
- StormNimbus集群保证CAP流程
Nimbus启动时,检查当前本地是不是有所有的topology的代码,同时去申请获取leader锁,如果某台nimbus节点成为了集群的leader,会再去检查一次当前本地的代码是不是包含所有活动状态 ...
- 解决小米wifi在windows10无法创建问题
1.打开小米随身WIFI客户端安装文件夹(软件安装在那个盘,就在那个盘里找). 2.D:\Program Files (x86)\XiaoMi\MiWiFi\drivers\Win81x64(系统是3 ...
- Android内存优化之 LruCache与DiskLruCache
在日常的Adroid开发中我们经常遇到需要处理大量图片的地方,但Android手机的内存有限该怎么避免手机 内存溢出导致app程序oom,google提供了两种解决方式 LruCache LruCac ...
- 重置了下系统好多关于mysql密码的文章都很渣拷分好的备用
方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass ...
- CSS之过渡简单应用—日落西山
代码: <!DOCTYPE html><html><head> <title>日落西山</title> <meta charset=& ...
- 6、Android之LayoutInflater.inflate()
LayoutInflater.inflate()的作用就是将一个xml定义的布局文件实例化为view控件对象: 与findViewById区别: LayoutInflater.inflate是加载一个 ...