SAP/ABAP Reference Guide


This document provides some more detailed information about the objects and links that are stored in the Analysis Service. Other technical information may also be available.

Object Types

Objects detected by the analyzer are summarized in the following table:

Project Items

ABAP Project

ABAP Objects

ABAP Alias
ABAP Badi
ABAP Class
ABAP Class Pool
ABAP Constructor
ABAP Event
ABAP Event Block
ABAP Event Method
ABAP File Level Code
ABAP Flow Logic File
ABAP Form
ABAP Function
ABAP Function Pool
ABAP Include
ABAP Interface
ABAP Interface Pool
ABAP Macro
ABAP Member
ABAP Method
ABAP Module
ABAP Module Pool
ABAP Package
ABAP Program
ABAP Type Pool
ABAP Unresolved Folder
ABAP Unresolved Object
ABAP User Exit

SAP objects, Processing Screens & Selection Screens

ABAP Processing Screen
ABAP Selection Screen
SAP Project
SAP Table
SAP Transaction
SAP View

BAPI objects

BAPI
BAPI Attribute
BAPI Event
BAPI Key Field
BAPI Method

Web Dynpro for ABAP

Web Dynpro Action
Web Dynpro Application
Web Dynpro Attribute
Web Dynpro Component
Web Dynpro Component Controller
Web Dynpro Event Handler
Web Dynpro Inbound Plugin
Web Dynpro Interface Controller
Web Dynpro Interface View
Web Dynpro Method
Web Dynpro Outbound Plugin
Web Dynpro Supply Function
Web Dynpro View
Web Dynpro Window
Link Types

The following table describes references that are detected by the analyzer and the context in which corresponding links are traced and stored in the Analysis Service:

Link type When is this type of link created? Example
ACCESS EXEC This link is created when a piece of code calls a method.
CALL METHOD oref->method1...
MEMBER This link is created when an object make an access to a member of another object.
METHOD mymethod.   WRITE ref->attrENDMETHOD.
READ This link is created when an object reads a value of another object.
METHOD mymethod.   X = ref->attrENDMETHOD.
WRITE This link is created when an object modifies a value of another object.
METHOD mymethod.   ref->attr = 10ENDMETHOD.
BELONGS TO This link is created when one object belongs to another object.
report abapReportFunction fEndfunction

(f belongs to abapReport).

CALL This link is used to describe a function that is called in a code block.
Function fPerform gEndfunction

(f calls g)

This link is created when a SAP transaction calls another SAP transaction. This information is extracted from the SAP system.
This link is created when a SAP transaction calls the processing screen or the selection screen of an ABAP program. This information is extracted from the SAP system.
This link is created when an ABAP program calls a SAP transaction.
CALL TRANSACTION SA10 AND SKIP FIRST SCREEN....LEAVE TO TRANSACTION SA10.
This link is created when an event block of a screen calls an ABAP module.
PROCESS BEFORE OUTPUT.MODULE STATUS_0100.*PROCESS AFTER INPUT.CHAIN.FIELD: SDYN_CONN-CITY, SDYN_CONN-COUNTRY,SDYN_CONN-CARID, SDYN_CONN-MARK.MODULE USER_COMMAND.ENDCHAIN.
This link is created when an ABAP component calls a screen. This information is extracted from the SAP system.
INCLUDE This link is used when a file includes another file.
Report abapReportInclude include_name
INHERIT EXTEND This link is created from a class A to a class B if A inherits B.
CLASS subclass DEFINITION   INHERITING FROM superclass.ENDCLASS.
OVERRIDE If a method of a class overrides a method belonging to a parent class, then this link is created between the two methods.
METHODS mymethod REDEFINITION.
IMPLEMENT This link is created from a class to an interface when the class implements this interface.
CLASS myclass DEFINITION.PUBLIC SECTION.INTERFACES: interf1, interf2 ... ENDCLASS.
If a class implements an interface, this link is also created between the method belonging to the class and the corresponding method belonging to the interface.
INTTERFACE status.METHODS write.ENDINTERFACE.CLASS counter DEFINITION.PUBLIC SECTION.INTERFACE status....ENDCLASS.CLASS counter IMPLEMENTATION.METHOD status~write....ENDMETHOD....ENDCLASS.
RAISE This link is created when a method activates an event.
RAISE EVENT evt EXPORTING ...
RELY ON This link is created when a method is a handler for an event.
METHODS handler FOR EVENT evt OF {class|interf}IMPORTING ... ei ...[sender].
USE - This link is created when a processing screen or a selection screen is used in conjuncton with an ABAP program. This information is extracted from the SAP system.
- This link is created when a SAP transaction calls an ABAP program. This information is extracted from the SAP system.
- This link is created when an ABAP component calls a screen. This information is extracted from the SAP system.
- This link is created when a processing screen or a selection screen is used in conjuncton with an ABAP program. This information is extracted from the SAP system.
SELECT This link is used when a code block contains an SQL request with a select statement (in the case of embedded SQL or native SQL).
Report abapReportSelect col from table
UPDATE This link is used when a code block contains an SQL request with an update statement (in the case of embedded SQL or native SQL).
Report abapReport.Update table set col='a'
DELETE This link is used when a code block contains an SQL request with a delete statement (in the case of embedded SQL or native SQL).
Report abapReportDelete from table
INSERT This link is used when a code block contains an SQL request with an insert (in the case of embedded SQL or native SQL).
Report abapReportInsert into table values vals

Notes

  • No link is created in the Analysis Service for a dynamic call, i.e. when the called object is the value of a variable e.g.: calls to functions/modules, accesses to database tables or between methods and objects.
Out of memory errors

When analyzing a large amount of code or an extraction of a very high number of database tables (several thousand), the analysis may abruptly halt with the following message in the analysis log:

Analyzer is running out of memory. This may occur under disk full condition.

This can mean that the virtual memory used by the analyzer is too fragmented to be able to store all the objects resulting from the analysis. To workaround this issue, it is possible to reduce the amount of allocated virtual memory by lowering the Memory Threshold for Instances parameter located in SAP Technology options.

This parameter can also be configured via the "maxMem" value located in the "analyzer" element of the following XML file:

<CAST_installation_folder>\Configuration\amt\AmtJobConfig_ABAP.xml

For example:

<?xml version="1.0" encoding="ISO-8859-1"?><configuration><!-- The analyzer actions --><import file="AmtJobConfig_ABAPRaw.xml"/><actions><action name = "MetricAssistantAction" /></actions><analyzer name = "ABAP Analyzer" showProgress = "false" maxMem = "1000" /></configuration>

CAST Website