20170228 ALV method中用E消息,会退出到初始界面;STOP 会dump;
再回车就处理界面了,
所以,Handel_data_change 做数据检查时,如果需要报错要用到,
CALL METHOD er_data_changed->add_protocol_entry
EXPORTING
i_msgid = 'Z_BH1'
i_msgno = ''
i_msgty = 'E'
i_msgv1 = '你输入的起始日期大于结束日期!'
i_msgv2 = ''
i_msgv3 = ''
i_fieldname = ls_modi-fieldname
i_row_id = ls_modi-row_id.
可参考
*&监听修改
HANDLE_DATA_CHANGED
FOR EVENT DATA_CHANGED OF CL_GUI_ALV_GRID
IMPORTING ER_DATA_CHANGED. *&方法实施:
METHOD handle_data_changed. DATA: ls_modi TYPE lvc_s_modi.
DATA: lv_valid TYPE c. DATA: lt_lvc_t_modi TYPE lvc_t_modi .
DATA: ls_lvc_t_modi TYPE lvc_s_modi ,
l_matnr TYPE matnr,
l_datum TYPE datum,
l_datab TYPE datum,
lv_flag().
* CLEAR:LV_FLAG,L_DMBTR,L_CTCOD.
LOOP AT er_data_changed->mt_good_cells INTO ls_modi.
IF ls_modi-fieldname = 'MATNR'.
*****************获取CELL值
CALL METHOD er_data_changed->get_cell_value
EXPORTING
i_row_id = ls_modi-row_id
i_fieldname = ls_modi-fieldname
IMPORTING
e_value = l_matnr.
IF NOT l_matnr IS INITIAL.
SELECT SINGLE matnr INTO l_matnr FROM mara
WHERE matnr = l_matnr.
IF sy-subrc = .
SELECT SINGLE maktx INTO wa_out-maktx FROM makt
WHERE matnr = l_matnr
AND spras = sy-langu.
MODIFY gt_out FROM wa_out INDEX ls_modi-row_id TRANSPORTING maktx.
CLEAR: ls_lvc_t_modi,lt_lvc_t_modi[].
ls_lvc_t_modi-row_id = ls_modi-row_id. "自然数
ls_lvc_t_modi-fieldname = 'MAKTX'. "内部表字段的字段名称
ls_lvc_t_modi-value = wa_out-maktx." 单元格内容
ls_lvc_t_modi-tabix = ls_modi-row_id."自然数
APPEND ls_lvc_t_modi TO lt_lvc_t_modi.
CLEAR ls_lvc_t_modi.
CALL METHOD g_grid->set_delta_cells
EXPORTING
it_delta_cells = lt_lvc_t_modi[].
ELSE.
lv_flag = 'X'.
* CALL METHOD ER_DATA_CHANGED->ADD_PROTOCOL_ENTRY
* EXPORTING
* I_MSGID = 'Z_BH1'
* I_MSGNO = ''
* I_MSGTY = 'E'
* I_MSGV1 = '你输入的商品不存在!'
* I_MSGV2 = ''
* I_MSGV3 = ''
* I_FIELDNAME = LS_MODI-FIELDNAME
* I_ROW_ID = LS_MODI-ROW_ID. ENDIF.
ENDIF.
ENDIF. IF ls_modi-fieldname = 'DATBI'.
CALL METHOD er_data_changed->get_cell_value
EXPORTING
i_row_id = ls_modi-row_id
i_fieldname = ls_modi-fieldname
IMPORTING
e_value = l_datum. READ TABLE gt_out INTO wa_out INDEX ls_modi-row_id.
l_datab = wa_out-datab. IF l_datum < l_datab.
lv_flag = 'X'.
CALL METHOD er_data_changed->add_protocol_entry
EXPORTING
i_msgid = 'Z_BH1'
i_msgno = ''
i_msgty = 'E'
i_msgv1 = '你输入的起始日期大于结束日期!'
i_msgv2 = ''
i_msgv3 = ''
i_fieldname = ls_modi-fieldname
i_row_id = ls_modi-row_id.
ENDIF. ENDIF. ENDLOOP. ****************显示错误消息
* IF LV_FLAG = 'X'.
* CALL METHOD ER_DATA_CHANGED->DISPLAY_PROTOCOL.
* ENDIF. ENDMETHOD. "HANDLE_DATA_CHANGED
20170228 ALV method中用E消息,会退出到初始界面;STOP 会dump;的更多相关文章
- OO ALV事件里使用E消息,下一步会退出到系统初始界面
在OO ALV data_change事件时(选中行),锁定KEY值, 继续,取消选择,退出到系统初始界面 改成 pv_status = 'E'. pv_msg = '采购订单' && ...
- Flutter 实现退出登录功能,应用退出到登录界面 | 返回应用首页
1. 使用场景:退出登录./// 路由作用:移除 [ModalRoute.withName("/loginPage")] 除外的所有界面,并跳转到 ["/loginPag ...
- Apache RocketMQ 消息队列部署与可视化界面安装
一.介绍 Apache RocketMQ是一个分布式.队列模型的消息中间件,具有低延迟.高性能和高可靠.万亿级容量和灵活的可扩展性.核心组件由四部分组成:Name Servers,Brokers,Pr ...
- RocketMQ消息队列部署与可视化界面安装
MQ安装部署 最新版本下载:http://rocketmq.apache.org/release_notes 修改配置 vi conf/broker.conf 添加brokerIP1 brokerIP ...
- Android 再次打开APP进入按Home键退出时的界面(thisTaskRoot)
问题 Android 设置页面的启动模式为 singletask 之后,当按Home 退出时,再重新打开应用,还会进入首启动页.就会造成一些应用需要重新登录,当前页数据丢失等问题 解决 去除启动页的 ...
- 新建MMS草稿保存后,再进入草稿修改收件人,退出到会话界面,会显示两条草稿
分析原因:新建彩信草稿,保存后,再打开草稿,修改收件人,再保存会产生新的threadId, 而之前保存的草稿theadId还存在,导致此问题. (必现. 解决方法:将原来的Thread_id和新的收件 ...
- 如何在mysql中退出当前窗口界面而不关闭窗口的方法
CTRL+Cexit;quit ;
- cocos2dx 2.1.x 退出SDK相关界面后EGLView 不刷新渲染
报错内容为: [3390:1456879] failed to call contextcocos2d: surface size: 0x0[3390:1456879] Failed to make ...
- SQVI和SAP查询QUERY的区别和使用注意事项
SQVI.SAP查询QUERY都适用于简单的表连接数据查询,但都不能打包传输到PRD,不同环境需要重复创建.可以生成报表程序供T-CODE调用,用se93指定事务码和程序名称. 区别1-权限: SQV ...
随机推荐
- BZOJ 3757 苹果树 ——莫队算法
挺好的一道题目,怎么就没有版权了呢?大数据拍过了,精神AC.... 发现几种颜色这性质比较垃圾,不可加,莫队硬上. %了一发popoqqq大神的博客, 看了一波VFK关于糖果公园的博客, 又找了wjm ...
- 3931: [CQOI2015]网络吞吐量【网络流】
网络吞吐量(network)题目描述路由是指通过计算机网络把信息从源地址传输到目的地址的活动,也是计算机网络设计中的重点和难点.网络中实现路由转发的硬件设备称为路由器.为了使数据包最快的到达目的地,路 ...
- 刷题总结——选课(ssoj树形dp+记忆化搜索+多叉树转二叉树)
题目: 题目描述 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校开设了 N(N<300)门的选修课程,每个学生可选课程的数量 M 是给定的.学生选修了这M门课 ...
- 浅谈Oracle数据库分区表
Oracle数据库分区是作为Oracle数据库性能优化的一种重要的手段和方法,之前,只听过分区的大名,却总未用过,最近简单学习了一下,总结如下,不对之处,还希望朋友们多多指点,交流! 1.表空间及分区 ...
- 648. Replace Words
Problem statement In English, we have a concept called root, which can be followed by some other wor ...
- [暑假集训--数位dp]hdu2089 不要62
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer).杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍, ...
- Vijos——1359 Superprime
Superprime 描述 农民约翰的母牛总是生产出最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们. 农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还 ...
- STM32调试问题
1.JLINK V8 error:flash download failed - could not load file: Options for Target 'Targer 1'下的菜单下Outp ...
- HDOJ 5213
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5213 BC 上的题,题解很清楚,会莫对的应该不难, 对于一个询问,我们拆成四个询问,开始拆成求区间矩形 ...
- jquery的固定定位效果
今天做了个固定定位的效果.比如对导航需要进行固定定位效果: 当没有滚动到导航下面,导航正常显示. 当滚动到导航下面,导航就固定到顶部. 这个效果使用了jquery的方法实现,具体思路为: 1)首先获取 ...