自建类SE16N功能,修改数据库表数据

其实自建SE16N功能,并让它可以直接修改数据库表数据,其原理与在SE16N中DEBUG修改EDIT参数的原理一样,只是在调用标准的函数组时把入参稍作修改即可。
实现代码如下:

REPORT zse16n.


PARAMETERS:p_tabnm TYPE dd02l-tabname OBLIGATORY.


AT SELECTION-SCREEN.

  SELECT COUNT(*)
    FROM dd02l
   WHERE tabname = p_tabnm.
  IF sy-subrc <> 0.
    MESSAGE '表不存在' TYPE 'E'.
  ENDIF.

START-OF-SELECTION.

  CALL FUNCTION 'SE16N_INTERFACE'
    EXPORTING
      i_tab     = p_tabnm
      i_edit    = 'X'   "参数修改
      i_sapedit = 'X' "参数修改
    EXCEPTIONS
      no_values = 1
      OTHERS    = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
           WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
           DISPLAY LIKE 'E'.
  ENDIF.

封装一个事务代码,就是一个能修改的SE16N啦,SKR!

猜你喜欢

转载自blog.csdn.net/ABAPNeverGiveUP/article/details/90021315
今日推荐