Vous êtes sur la page 1sur 3

SAP ABAP: Best Practices Code Inspector

Prepared By: Dhiraj Dangore (580125)


Features
The Code Inspector is a tool for checking static ABAP coding and DDIC objects (i.e. generally
all objects of the Object Repository) under aspects of functional correctness, performance,
security, reliability, and statistical information.
It helps developers to adhere to programming standards and guidelines by creating messages on
less-than-optimal coding. The Code Inspector offers various possibilities to define object sets
and to combine multiple single checks in so-called "check variants". These functions, and the
tool's parallel processing framework, make the Code Inspector a flexible and effective
development assistant.
The Code Inspector can be used in various scenarios with different types of checks, thus
providing insights into the code quality from various angles.
Usage scenarios
1. Single object checks from the Development Workbench
You can check a single object with the Code Inspector from the ABAP Editor
(transaction SE38), the Function Builder (transaction SE37), the Class Builder
(transaction SE24), or the ABAP Data Dictionary (transaction SE11). To do this,
choose <object> > Check > Code Inspector from the menu, where <object> can be a
program, function module, class, or table. The respective single objects are then checked
with a default check variant.
2. Checks on transport objects from the Transport Organizer
You can invoke the Code Inspector from within the Transport Organizer (transaction
SE09) to check objects in a transport request. To do this,
choose Request/Task > Complete Check > Objects (Syntax Check).
3. Checks on sets of objects from transaction SCI
The Code Inspector (transaction SCI) itself enables you to create a wide range of object
sets using standard selections via package, software and application component, source
system, transport layer, responsible, object type, object name and so on.
In addition, special object collectors are available that allow you to read objects from a
file, for example.
An object set can be combined with a check variant to a so-called "inspection" that can be
executed in a single process or in parallel.

TCS Confidential

Created By: Dhiraj Dangore (580125).

Types of checks and check variants


Below is a short extract of the types of checks and functions that are offered by Code Inspector.

ABAP Test Cockpit

Syntax
Syntax check; extended program check

Performance
Analysis of WHERE clauses for SELECT, UPDATE and DELETE; SELECT statements
that bypass the table buffer; Low performance operations on internal tables ; table
attributes check

Security
Usage of critical statements; dynamic and cross-client database accesses; use of ADBCinterface

Robustness
Check of SY-SUBRC handling; suspect conversions; activation check for DDIC objects

Programming Conventions
Naming conventions

Search Functions
Search of ABAP tokens; search ABAP statement patterns; search for ABAP statements
with regular expressions

Metrics and Statistics


Program complexity test; statement statistics

You can combine any of these single checks into so-called "check variants", for example to
check for the adherence to given programming guidelines.
Best Practices
Developers can use the Code Inspector to support their everyday work. For example, the search
functions or metric checks of the tool can be a great help when restructuring the code.
The Code Inspector allows developers to define which objects are to be checked and which
quality aspect of the code is to be inspected (e.g. performance, security).
It is also possible to define global check variants as general programming guidelines, to ensure
standardized programming within a development community. Check variants can prescribe for
example naming conventions or other rules. The global check variants 'DEFAULT' and
TCS Confidential

Created By: Dhiraj Dangore (580125).

'TRANSPORT' inspect objects in the development workbench and in transport requests,


respectively. These check variants contain SAP-defined settings, but can be modified as needed.
Another global check variant delivered with every SAP system is
'PERFORMANCE_CHECKLIST' which helps to detect less-than-optimal coding with regard to
application performance.

TCS Confidential

Created By: Dhiraj Dangore (580125).