【SAP】ABAP——ALV显示后保存修改后的数据至数据库表

ALV实现前,编辑该字段的fieldcat-edit =  'X'  可编辑。

在USER_COMMAND中进行如下操作:

LOOP AT lt_out INTO wa_out.
  MOVE-CORRESPONDING wa_out TO ls_mod.
  APPEND ls_mod TO lt_old.
  CLEAR: wa_out,ls_mod.
ENDLOOP.    "lt_old ALV显示前的数据

FORM user_command USING ucomm     LIKE sy-ucomm
                        selfield  TYPE slis_selfield.

  DATA: lr_grid TYPE REF TO cl_gui_alv_grid.
  DATA: lt_rows TYPE lvc_t_row WITH HEADER LINE.

  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = lr_grid.

  CALL METHOD lr_grid->check_changed_data.
  selfield-refresh = 'X'.     "更新修改后的数据至内表

  LOOP AT lt_out INTO wa_out.
    MOVE-CORRESPONDING wa_out TO ls_mod.
    APPEND ls_mod TO lt_new.
    CLEAR: wa_out, ls_mod.
  ENDLOOP.  "lt_new  修改后的数据

  CASE ucomm.
    WHEN '&DATA_SAVE'."修改后点击保存时
      "ALV所修改的行
      CALL FUNCTION 'CTVB_COMPARE_TABLES'  "改函数可比较两个表的增删改
        EXPORTING
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值