前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自己开发的ABAP代码版本查看工具

自己开发的ABAP代码版本查看工具

作者头像
Jerry Wang
发布2019-06-13 20:40:13
6980
发布2019-06-13 20:40:13
举报

为什么要写这个工具

我在做SAP CRM Fiori的开发时,需要在一个method的众多repository里一个一个查看寻找我需要的关键字,太费时间和眼睛,所以写了一个report把一个method所有version的source code都download下来,直接用Ctrl+F即可搜索,避免了manual effort。

如何使用

执行report,输入要查看version 信息的ABAP class name和method name:

clipboard1
clipboard1

执行后输出结果:

clipboard2
clipboard2

download到本地后即可使用各种文本处理工具进行所需的查询:

clipboard3
clipboard3
clipboard4
clipboard4

source code

REPORT ZTEST_CAG_CAT.


PARAMETERS: cname TYPE SEOCOMPO-clsname OBLIGATORY DEFAULT 'CL_CRM_OPPORTUNITY_MPC_EXT',

            mname TYPE seocompo-cmpname OBLIGATORY DEFAULT 'DEFINE_OPPORTUNITY'.


data: lv_name TYPE vrsd-objname,

      lt_version TYPE STANDARD TABLE OF vrsd,

      lt_table TYPE STANDARD TABLE OF ABAPTXT255,

      lt_trdir TYPE STANDARD TABLE OF TRDIR,

      lt_VSMODISRC TYPE STANDARD TABLE OF SMODISRC,

      lt_VSMODILOG TYPE STANDARD TABLE OF SMODILOG.


lv_name = cname && '%' && mname.


SELECT objname versno datum zeit FROM vrsd INTO CORRESPONDING FIELDS OF TABLE lt_version

   WHERE objname LIKE lv_name ORDER BY versno DESCENDING.


LOOP AT lt_version ASSIGNING FIELD-SYMBOL(<version>).

   CALL FUNCTION 'SVRS_GET_REPS_FROM_OBJECT'

     EXPORTING

       object_name                        = <version>-objname

       object_type                        = 'METH'

       versno                             = <version>-versno

     TABLES

       repos_tab                          = lt_table

       TRDIR_TAB                          = lt_trdir

       VSMODISRC                          = lt_VSMODISRC

       VSMODILOG                          = lt_VSMODILOG.


   ASSERT sy-subrc = 0.


   WRITE: / 'version number: ' COLOR COL_GROUP, <version>-versno COLOR COL_NEGATIVE,

   'Date: ' COLOR COL_KEY, <version>-datum COLOR COL_HEADING, ' time: ' COLOR COL_POSITIVE, <version>-zeit COLOR COL_NORMAL.


   LOOP AT lt_table ASSIGNING FIELD-SYMBOL(<line>).

      WRITE: / <line>-line.

   ENDLOOP.

ENDLOOP.
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年06月12日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么要写这个工具
  • 如何使用
  • source code
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档