/abap-code-search-tools

ABAP Code Search

Primary LanguageABAPMIT LicenseMIT

abap package version

abap-code-search

ABAP Advanced Code Search Tools

Support of ABAP releases 7.40 and 7.50

If you are running an ABAP system with 7.40 or 7.50 with a 753 or 754 kernel you should be able to install the main branch without any syntax errors, but only up to a certain patch level (see Note 3279914).
Due to the necessary usage of OFFSET in an Open SQL statement you have to switch to branch nw-740 if you are at a newer patch level.

Description

Searches Code in ABAP sources like

  • Classes (CLAS)
  • Interfaces (INTF)
  • Programs (PROG)
  • Type Groups (TYPE)
  • Function Groups (FUGR)
  • Data Definitions (DDLS)
  • Metadata Extensions (DDLX)
  • Access Controls (DCLS)
  • Behavior Definitions (BDEV)
  • Simple Transformations (XSLT)

The search is done entirely via ABAP (as opposed to the ADT Source Search). There is an option to run the search in parallel for better performance

Search features

Search can be done via normal String search or with Regular Expressions. If supported by the system it is also possible to activate PCRE (Perl Compatible Regular Expressions)

UI

You can execute the search via report ZADCOSET_SEARCH, where most of the options are available as well, but the main focus of the UI will be ADT (see abap-code-search-ui).

Package overview

  • /src
    Root package which currently also holds the search API
    Important Objects in package:

    Object Name Purpose
    ZCL_ADCOSET_SEARCH_ENGINE Access point to code search
    ZADCOSET_SEARCH ABAP Report for executing the code search
  • /src/adt
    Implementation of the ADT backend

  • /src/parl
    Implementation of parallel processing - needed for the code search

Installation

Install this repository using abapGit.

Choosing the correct branch for your System

NW version Branch name
≥ 7.51 main
7.50 nw-740
7.40 nw-740
< 7.40 Not officially supported

Supported Databases at branch nw-740

A certain part of the implementation for the ABAP releases 7.40 and 7.50 uses ADBC (ABAP Database Connectivity).
Only the following databases are supported at the moment:

  • Oracle
  • HANA

Necessary Authorizations

To access the backend from ADT a user must have the following authorizations

Authorization Object Authorization Field Value
S_ADT_RES URI /devepos/adt/cst/*