CALL METHOD er_data_changed->add_protocol_entry

 
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(1).
*    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 = 0.
            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     = '000'
*                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     = '000'
              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 METHOD handle_data_changed-的更多相关文章

  1. 20170228 ALV method中用E消息,会退出到初始界面;STOP 会dump;

    再回车就处理界面了, 所以,Handel_data_change 做数据检查时,如果需要报错要用到, CALL METHOD er_data_changed->add_protocol_entr ...

  2. SAP 直营验单

    *&---------------------------------------------------------------------* *& Report  ZSDR005 ...

  3. 00 alv抬头等

    *&---------------------------------------------------------------------* *& Report ZHJ_TEST0 ...

  4. ALV用例大全

    一.ALV介绍  The ALV Grid Control (ALV = SAP List Viewer)是一个显示列表的灵活的工具,它提供了基本功能的列表操作,也可以通过自定义来进行增强,因此可以允 ...

  5. OO ALV 学习参考

      http://blog.csdn.net/sapliumeng/article/details/18653491 一.ALV介绍 The ALV Grid Control (ALV = SAPLi ...

  6. alv行可编辑时带出描述

    ALV显示可以编辑的状态下可以带出描述信息等,比如维护表程序输入公司代码时需要带出公司代码的描述,这时就需要通过下面事件来触发 定义一个类: CLASS lcl_event_receiver DEFI ...

  7. ABAP DEMO ALV-监听数据修改

    *&---------------------------------------------------------------------* *& Report YDEMO_006 ...

  8. jsp中出现onclick函数提示Cannot return from outside a function or method

    在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...

  9. Apply Newton Method to Find Extrema in OPEN CASCADE

    Apply Newton Method to Find Extrema in OPEN CASCADE eryar@163.com Abstract. In calculus, Newton’s me ...

随机推荐

  1. [BZOJ1584] [Usaco2009 Mar]Cleaning Up 打扫卫生(DP)

    传送门 不会啊,看了好久的题解才看懂 TT 因为可以直接分成n段,所以就得到一个答案n,求解最小的答案,肯定是 <= n 的, 所以每一段中的不同数的个数都必须 <= sqrt(n),不然 ...

  2. 【DFS序+树状数组】BNUOJ 52733 Random Numbers

    http://acm.bnu.edu.cn/v3/problem_show.php?pid=52733 [题意] 给定一棵树,这棵树每个点都有一个点权,标号从0开始,0是根结点 修改操作: SEED ...

  3. 简单的webservice发布和测试

    eclipse发布参考:http://www.cnblogs.com/cherxu/p/5179053.html很简单,接口写好后,打个war包放到tomcat里面跑起来: 本例采用axis来测试:发 ...

  4. 【bzoj1854】[Scoi2010]游戏 - 并查集

    lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示.当他使用某种装备时,他只能使用该装备的某一个属性.并且每种装备最多只能使 ...

  5. 洛谷 [P2216] 理想的正方形

    二维单调队列 先横向跑一边单调队列,记录下每一行长度为n的区间的最值 在纵向跑一边单调队列,得出结果 注意,mi要初始化为一个足够大的数 #include <iostream> #incl ...

  6. iOS开发中16进制颜色(html颜色值)字符串转为UIColor

    //16进制颜色(html颜色值)字符串转为UIColor +(UIColor *) hexStringToColor: (NSString *) stringToConvert { NSString ...

  7. 转 vs2010转vs2008 其他的一样

    如果你使用VS2010的任何版本写代码,那么在VS2008中就不能打开VS2010的解决方案了,为此,通过以下三步就可以解决了一.对于工程名.sln; 1.用你喜欢的编辑器打开sln文件,比如note ...

  8. Spring Boot集成Spring Data Reids和Spring Session实现Session共享

    首先,需要先集成Redis的支持,参考:http://www.cnblogs.com/EasonJim/p/7805665.html Spring Boot集成Spring Data Redis+Sp ...

  9. 转: memcached Java客户端spymemcached的一致性Hash算法

    转自:http://colobu.com/2015/04/13/consistent-hash-algorithm-in-java-memcached-client/ memcached Java客户 ...

  10. 转: 环信联合创始人:App主流反垃圾服务难点和技术实现全解析

    转:http://science.china.com.cn/2016-03/24/content_8659834.htm 发布时间: 2016-03-24 13:15:02  |  来源: 全球财经网 ...