Usage and Procedure Logging (UPL) Support

Prev Next

What is UPL?

UPL stands for Usage and Procedure Logging.

It is a functionality available by SAP in any ABAP-based system based on the core functionality of the SAP Coverage Analyzer.

It will log all called and executed ABAP units, like programs and function modules, down to classes, methods, and subroutines. On top of that, you can evaluate the usage of Smartforms.

This information will be used together with the ST03N information and is stored in SOLMAN, both for custom and standard objects. Panaya will keep the program name and the executable unit.

UPL Benefits

Today, we are analyzing the connection between the ABAP units based on the entry-level objects and determining their usage based on the usage of the entry-level objects.

This analysis is not accurate, especially when we cannot find this connection and then set the usage level to Unknown.

Adding the UPL information enables much more accurate usage analysis. Usage issues that we have today related to layout / smartforms / user exits, dynamic calls, etc., will be resolved.

This enhancement is significant for Cleansing projects where we recommend removing unused code. Using UPL data will improve the accuracy of the analysis.

SAP Prerequisites

The information for the SOLMAN version and instructions on how to activate UPL are in the following notes and in the SAP link mentioned above.

UPL, like ST03N, collects information over time; therefore, you have to instruct the customer to activate it prior to starting the project.

Panaya and Usage

We will still use ST03N to determine the usage. In addition, if UPL is activated on the customer's system, we will use this information as well.

Using the UPL data will improve the usage classification, as it relies on the actual usage of the object rather than only on Panaya's analysis.

UPL data is stored in the SOLMAN system (in a BW cube). That way, usage data is collected from all systems in the landscape in one place (separated by system name).

To fetch UPL data, we need the customer to supply an RFC to the SOLMAN system and not only to the Production system.

Support

  1. Only custom object usage is extracted

  2. Only tasks on the Include level will be supported:

    1. Cleansing tasks

    2. Cloned program tasks

Technical Information

UPL Collection on ECC

The UPL works in the following manner:

  1. The data is saved in the ECC system temporarily (every customer may configure this differently).

  2. Then, a job in SOLMAN collects this data and aggregates it into the BW cube in SOLMAN.

Panaya supports data extraction from the ECC system since it is not aggregated there.

What Information is Collected in UPL?

The information is collected for the main programs and goes to the executable unit.

Since the executable unit is unique per main program we are able to determine which include it belongs to in the programs; it can be either:

  1. Executable

  2. Main program - Function Group (collection of includes where each function is defined in a different include)

  3. Class

Object Hierarchy in SAP

  • Many programs can call the same include.

  • In each include, many executable units can be defined - both forms and modules.

Example of UPL data

Usage Classification

When the user collects UPL data and provides the necessary RFC and authorization, we will also extract UPL.

We extract 12 months back.

For objects we classify as used only based on UPL, the dialog steps will be set to 0 (yes, used objects with zero dialog steps). They will be added to the pool of Used objects and then distributed between the different usage levels with all other objects based on the 20-60-20 approach.

The usage determined by UPL data is either Rarely or Normally used (because of the zero dialog steps).

If the same object was also classified as used by the static analysis, the higher usage between both levels is taken.

From Which System Is the UPL Extracted?

In SOLMAN, many SAP systems are defined, and UPL can be activated for some or all of them. We need to decide which system will collect the UPL data.

Using the SOLMAN RFC we connect to SOLMAN and extract the UPL data from the system the usage RFC is pointing to (usually production).

If the RFC points to the wrong system (DEV, for example), the UPL data will be extracted from SOLMAN from the DEV system.

See also

UPL Overview and Prerequisites - SAP Documentation