ABAP 批量 copy class 重命名

*&---------------------------------------------------------------------*
*& Report ZTEST_COPY_CLASS
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_copy_class.



PARAMETERS:p_class    TYPE seoclskey."前缀
PARAMETERS:p_name     TYPE char20."前缀
*PARAMETERS:p_name_n   TYPE seoclskey."new class
PARAMETERS:p_pack     TYPE char30 ."dest package



START-OF-SELECTION.

*获取需要复制的类

  DATA:lv_string      TYPE string.
  DATA:lv_string_temp TYPE string.
  DATA:lv_class_new   TYPE seoclskey.
  DATA:lv_class_temp  TYPE string.

  lv_string_temp = p_class.
  lv_string = lv_string_temp && '%'.


  SELECT clsname
  FROM seoclass
  INTO TABLE @DATA(lt_data)
  WHERE clsname LIKE @lv_string.

  BREAK-POINT.

  DATA:ls_clskey_old  TYPE seoclskey.
  DATA:ls_clskey_new  TYPE seoclskey.

  LOOP AT lt_data  ASSIGNING FIELD-SYMBOL(<ls_data>).

    CLEAR ls_clskey_old.
    CLEAR ls_clskey_new.



    lv_class_temp = p_name && <ls_data>-clsname.

    lv_class_new = lv_class_temp.

    ls_clskey_old-clsname = <ls_data>-clsname.
    ls_clskey_new-clsname = lv_class_new.

    CALL FUNCTION 'SEO_CLASS_COPY'
      EXPORTING
        clskey     = ls_clskey_old
        new_clskey = ls_clskey_new
      CHANGING
        devclass   = p_pack
      EXCEPTIONS
        OTHERS     = 1.
    IF sy-subrc IS INITIAL.
      COMMIT WORK AND WAIT.
    ENDIF.
  ENDLOOP.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值