You are on page 1of 41

SERVICE REPORT

SAP® Custom Code Maintainability Check

Confidential

SAP Systems ECP

SAP Product SAP ERP ENHANCE PACKAGE 6.07

Analysis Period 01.12.2017 - 31.05.2018

DB System SAP HANA Database 1.00.102.01

Customer The Rockport Group LLC

Newton USA - 21420259

Processed on SAP Solution Manager SMP


Release 7.20 SP 0006
Service Tool ST-SER 720 SP 0010

Date of Session 18.06.2018 Session No 1000000003944


Date of Report 25.06.2018 Installation No 0020911542
Anil Choudhary
Author
(Anil.Kumar.Choudhary@sap.com)

Authorized for SAP AGS, authorized partners and customer employees.


Please forward only to authorized recipients.
SAP® Custom Code Maintainability Check 18.06.2018

Table of Contents
TABLE OF CONTENTS ........................................................................................................................................ 2
1 SERVICE SUMMARY ....................................................................................................................................... 4
1.1 SUMMARY .................................................................................................................................................. 4
1.2 ACTION PLAN .............................................................................................................................................. 4
1.3 SYSTEM SIZE INDICATORS ............................................................................................................................... 6
1.4 CUSTOM CODE INDICATORS ............................................................................................................................ 6
2 USAGE ANALYSIS ........................................................................................................................................... 7
2.1 ACTIVE MODULES ......................................................................................................................................... 7
2.2 TRANSACTIONS AND REPORTS IN USE ................................................................................................................ 8
2.3 CUSTOMER TRANSACTIONS AND REPORTS NOT EXECUTED ...................................................................................... 8
3 MODIFIED SAP OBJECTS ............................................................................................................................... 10
3.1 MODIFIED OBJECTS IN THE SYSTEM ................................................................................................................. 10
3.2 USAGE OF THE MODIFICATION ASSISTANT ........................................................................................................ 13
3.3 MODIFIED OBJECTS IN THE ANALYSIS PERIOD .................................................................................................... 13
4 CUSTOMER OBJECTS .................................................................................................................................... 15
4.1 CUSTOMER OBJECTS IN THE SYSTEM ................................................................................................................ 15
4.2 CUSTOMER OBJECTS IN THE ANALYSIS PERIOD ................................................................................................... 18
5 ENHANCEMENTS.......................................................................................................................................... 20
5.1 ENHANCEMENTS IN THE SYSTEM ..................................................................................................................... 20
5.2 ENHANCEMENTS IN THE ANALYSIS PERIOD ........................................................................................................ 21
6 REFERENCED SAP STANDARD OBJECTS ........................................................................................................ 23
6.1 REFERENCED BAPIS IN THE SYSTEM ................................................................................................................ 23
6.2 REFERENCED BAPIS IN THE ANALYSIS PERIOD .................................................................................................... 23
7 QUALITY CHECKS.......................................................................................................................................... 24
7.1 SAP CODE INSPECTOR ANALYSIS - GSS ............................................................................................................ 24
7.2 SAP CUSTOM DEVELOPMENT MANAGEMENT COCKPIT CHECKS ............................................................................. 25
7.2.1 Syntax Errors ................................................................................................................................... 26
7.2.2 Inactive Customer Objects ............................................................................................................... 26
8 SOLUTION DOCUMENTATION ...................................................................................................................... 27
8.1 SYSTEM LANDSCAPE MAINTENANCE ................................................................................................................ 27
8.2 PROJECTS AND SOLUTIONS ............................................................................................................................ 27
8.3 BUSINESS PROCESSES .................................................................................................................................. 28
9 SAP SOFTWARE MAINTENANCE ................................................................................................................... 29
9.1 AGE OF SUPPORT PACKAGES ......................................................................................................................... 29
9.2 CONSISTENCY OF SAP SUPPORT PACKAGES ....................................................................................................... 31
9.2.1 Import History ................................................................................................................................. 31
9.3 SAP NOTES .............................................................................................................................................. 33
9.4 CONSISTENCY OF SAP NOTES ........................................................................................................................ 34
9.5 BUSINESS FUNCTIONS .................................................................................................................................. 34
9.6 CONSISTENCY OF BUSINESS FUNCTIONS............................................................................................................ 36
10 TRANSPORTS ............................................................................................................................................. 37
10.1 NUMBER OF TRANSPORT REQUESTS .............................................................................................................. 37
10.2 NUMBER OF OBJECTS IN TRANSPORT REQUESTS ............................................................................................... 37

Table of Contents 2/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

10.3 SOURCE SYSTEMS OF TRANSPORT REQUESTS ................................................................................................... 38


10.4 MOST FREQUENTLY CHANGED OBJECTS IN THE ANALYSIS PERIOD ......................................................................... 39
10.5 IMPORT ERRORS ....................................................................................................................................... 40

Table of Contents 3/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

1 Service Summary

During this service, we determined that improvements can be made


to your system. Take corrective action as soon as possible. If you
would like further information, create a customer message on
component SV-BO.

(Note: All recommendations provided in this report are based on our general experience only. We advise you to
test our recommendations before using them in your production system.)
OVERVIEW OF RATINGS
Rating Check Performed
Usage Analysis
Modified SAP Objects
Customer Objects
Enhancements
Referenced SAP Standard Objects
Quality Checks
Solution Documentation
SAP Software Maintenance
Transports

1.1 Summary
The SAP Custom Code Maintainability Check analyzes all development objects in your system ECP. It evaluates
the quality of your code regarding the ability to perform future SAP upgrades and enhancement package/support
package imports. In addition, we analyzed all objects that were changed in the analysis period from 01.12.2017 to
31.05.2018 in order to identify the objects in your recent custom code project.
This report was rated YELLOW due to the issues described in the action plan below. These issues could impact
the stability and availability of your production system. Please follow the recommended action items as soon as
possible in order to mitigate the risk.

The following action plan contains a short summary of all identified issues and recommendations. This report
contains a chapter with detailed explanations about each issue.

If you have any questions or comments concerning this report, do not hesitate to contact us.

1.2 Action Plan


See
Num Priori When
Issue Recommended Action secti
ber ty to do
on
The number of Next
modified SAP Before modifying the system, investigate whether user exits, devel
1 2 standard objects BAdIs, or the new options that are provided by the Enhancement opme 3.1
in the system is Framework can fulfill your requirements. nt
high. projec

Service Summary 4/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

See
Num Priori When
Issue Recommended Action secti
ber ty to do
on
t
Many SAP
Next
standard objects Check whether SAP Enhancement options can be used instead.
few
2 2 have been The SAP "Modification Justification Check (MJC)” service supports 3.3
month
modified in the you in this task.
s
analysis period.
Many customer
Check whether the required functionality is available in the SAP Next
objects have
standard. The SAP "Modification Justification Check (MJC)” and few
3 2 been imported in 4.2
"Acc elerated Innovation Enablement (AIE)” services support you month
the analysis
in this task. s
period.
Business Maintain the business process descriptions in the SAP Solution
In the
processes are Manager. Add additional details to the business process steps as
next
4 2 hardly maintained described in the SAP standard for documentation of custom code. 8.3
month
in SAP Solution The Solution Documentation Assistant in SAP Solution Manager
s
Manager. can help you in this task.
Next
Many objects
All modification operations should be executed with the SAP devel
were modified
Modification Assistant. This provides you with a detailed overview opme
5 3 without using the 3.2
of modifications that is easy to read and that dramatically reduces nt
Modification
the amount of effort needed to upgrade your system. projec
Assistant.
t
Next
The number of You should always enhance the SAP standard functionality by
devel
enhancements is using SAPs enhancement options like BADIs, User Exits, Appends,
opme 5.1/5.
6 3 lower than the or the new options that are provided by the Enhancement
nt 2
number of Framework. The SAP training courses BC425 and BC427 explain
projec
modifications. the available features.
t
Next
The number of devel
You should always try to access the SAP standard coding using
BAPIs called in opme 6.1/6.
7 3 officially released BAPIs if they are available. See transaction BAPI
your custom code nt 2
for all available BAPIs.
is low. projec
t
Many customer Next
Investigate whether there any customer objects that are obsolete
objects refer to few
8 3 or can be replaced by SAP standard functions to reduce the 6.3
SAP standard month
dependency.
objects. s
Some errors are
reported by the
SAP Code Next
Perform a code inspection in transaction SCI of your quality
9 3 Inspector for the few 7.1
assurance system and make the necessary error corrections.
selected weeks
development
classes.
Next
The support
few
10 3 package level is Import support package stacks at least once a year. 9.1
month
not up to date.
s
There are SAP
Notes with an
Check the SAP Notes with an inconsistent implementation status.
inconsistent
Download and implement the latest versions in DEV and transport Imme
implementation
11 3 them to all systems in the landscape. Leverage the Configuration diatel 9.4
status in the
Validation in SAP Solution Manager to keep track of implemented y
development and
SAP Notes.
quality assurance
system.
Some customer Review the list of customer objects that have been changed Next
12 3 10.4
objects were frequently. Check whether you can reduce these changes by devel
Service Summary 5/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

See
Num Priori When
Issue Recommended Action secti
ber ty to do
on
changed improving the requirement descriptions and test procedures. opme
frequently in the nt
last six months. projec
t

Priorities: 1 (very high), 2 (high), 3 (medium), 4 (low)

1.3 System Size Indicators


Indicators Value
Logged on Users 341
Transactions and Reports in Use 2133

1.4 Custom Code Indicators


The table shows the relevant change management indicators that were calculated during this service session.
Area Indicator Value
Custom Code in the System Modified Objects 445
Customer Objects 4229
Enhancements 147
Custom Code in Analysis Period Modified Objects 94
Customer Objects 1286
Enhancements 25

Service Summary 6/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

2 Usage Analysis

We analyzed the usage of custom code in your production system. No major


problems were detected in this area.

OVERVIEW OF RATINGS
Rating Check Performed
Transactions and Reports in Use
Customer Transactions and Reports Not Executed

This chapter analyzes the active modules and components in your system. We also checked which transactions
and reports used. We used the workload statistics data in your production system in the period 01.04.2018 –
31.05.2018.

2.1 Active Modules


The following table shows the active modules in your system. These are modules for which transaction steps were
executed in the period for which workload data was collected.
TOP 20 M ODULES
Module Description Number of distinct transactions and reports
FI Financial Accounting 130
MM-IM Inventory Management 87
MM-PUR Purchasing 77
LO-MD-RA-MT Assortment Maintenance 58
LO-MD-MM Article Master 57
BC-MID-ALE ALE Integration Technology 52
BC-SEC-USR-
User and Authorization Management 44
ADM
LE-SHP Shipping 43
FI-AR-AR Basic Functions 37
FI-AA-AA Basic Functions 36
CA Cross-Application Components 35
SD-SLS-GF Basic Functions 34
FI-GL-IS Information System 30
SD-MD-CM Conditions 24
FI-GL General Ledger Accounting 24
CO-OM Overhead Cost Controlling 22
BC-CCM-MON Monitoring 21
MM-IS-IC Inventory Controlling 21
SD-BF-OC Output Determination 20
SD-BIL Billing 18

Usage Analysis 7/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Evaluation:
The table above shows the application components in the production system that are most frequently used.
These components must be in the focus of regression tests after support package imports or upgrades.

2.2 Transactions and Reports in Use


The following table shows the number of transactions and reports that have been executed in the statistics period.
Statistics data was available for the period 01.04.2018 – 31.05.2018. In this table, we only count the reports that
have been executed directly (for example, in transaction SA38).
Item SAP Partner Customer Total
Transactions 1.218 6 121 1.345
Reports 673 1 113 787
Total 1.891 7 234 2.132

You can obtain a list of all used customer transactions and reports by executing the function module
/SDF/CMO_GET_WORKLOAD.
10.98% of all transactions and reports that have been executed in the statistics period are in the customer name
range.
Evaluation:
The number of customer transactions and reports in use is relatively low. This shows that you seldom
develop your own applications instead of using the standard SAP functionality.

2.3 Customer Transactions and Reports Not Executed


The following table shows the number of customer transactions and reports that have not been executed in the
statistics period from 01.04.2018 to 31.05.2018. In this table, we consider a report as "Used" if it was either
executed directly (for example, in transaction SA38) or if it was executed indirectly because it was linked to a
customer transaction used.
CUSTOMER TRANSACTIONS AND REPORTS
Item Customer(used) Customer(not used) Customer(total)
Transactions 121 70 191
Reports 128 133 261
Total 249 203 452

You can obtain a list of all unused customer transactions and reports by executing the function module
/SDF/CMO_GET_WORKLOAD.
44.91% of all customer transactions and reports in the system have not been executed in the statistics period.
Evaluation:
The number of unused customer transactions and reports is relatively low. Most customer transactions and
reports are actually used.

Background:
"Custom-developed objects" or "custom developments" refer to repository objects such as programs or tables that
are not shipped with standard SAP software but that are created in the customer namespace. In most SAP
systems, the number of these objects increases significantly over time. On the one hand, this increase is quite
natural because every company has very specific requirements that must be addressed by means of custom-
developed objects, such as reports or tables. However, the number of custom objects not used also increases.
Some custom objects become obsolete because an equivalent is provided by a newer version of the standard
SAP software. Others were developed but never really used or even activated because the company‘s
requirements had changed in the meantime. Experience shows that after a few years, up to one third of a
company's custom-developed objects are not in use – and this can be a challenge.

On a regular basis, custom developed objects should be reviewed for retirement. This can improve efforts
required to address custom code during transition events such as EHPs, SPs, and product releases. It can be
even more critical during a digital transformation project such as SAP S/4HANA. SAP Solution Manager provides
tools to assist with identifying and monitoring custom objects for retirement.

Custom Code Lifecycle Management (CCLM) is a central repository containing information on all customer
objects. With CCLM, customers have much more transparency into the custom code in their entire SAP
landscape. Objects and technical attributes are captured and updated regularly. With workload statistics and
Usage & Procedure Logging (UPL) or SCMON, usage information is extremely accurate for many custom code

Usage Analysis 8/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

object types.

CCLM includes a Decommissioning Cockpit, which allows customers to set up decommissioning projects to
perform a more comprehensive analysis of unused customer objects for a designated period, updating current
usage of the objects in the project. This allows customers to monitor groups of objects over time to ensure they
are not used and could be retired.

The Custom Development Management cockpit (CDMC) in SAP Solution Manager Enterprise Edition also
provides a clearing analysis function. With this tool, customers can create a clearing project to analyze the usage
of customer objects. The CDMC Clearing Analysis is a standalone static snapshot in time, and does not interface
with CCLM for usage or updates.

If you are interested in reducing the quantity of custom code in your system, join the value map for Custom Code
Management for assistance with how to proceed. Refer to the Summary Section 1.1 of this report for additional
information on how to register.

Usage Analysis 9/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

3 Modified SAP Objects

We analyzed the modified SAP standard objects in your system. Major problems
were detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Modified Objects in the System
Usage of the Modification Assistant
Modified Objects in the Analysis Period

3.1 Modified Objects in the System


We have counted the number of modified objects in your systems. These are changes to SAP standard objects.

We count at subobject level. For example, if three function modules within one function group are modified, we
count three objects. Modifications that are caused by implementing an SAP Note with the Note Assistant and
translations are not listed. Modified objects in the customer or partner name range are also not listed.

We have introduced the following object types:


- Code: Programs, includes, function modules, and so on
- Data Dictionary: Tables, structures, indexes, data elements, domains, …
- Text: Messages, documentation, report texts, …
- Other: All other object types

The following table lists the modifications by application component and by object type.
M ODIFIED OBJECTS IN THE SYSTEM
Application Data
Description Coding Text Others Sum
Component Dictionary
FI-LOC Localization 24 133 110 52 319
LO-MD-PL Site Master 0 45 0 0 45
LO-FSH-ARN Allocation run 3 14 2 0 19
Material
LO-FSH-MM 1 4 8 0 13
Management
Sales and
LO-FSH-SD 1 9 3 0 13
Distribution
Requirements
PP-MRP 2 4 1 0 7
Planning
Article
SD-MD-MM 2 2 0 0 4
Maintenance
MM-PUR Purchasing 0 0 0 3 3
Logistics Basic
LO-MD 3 0 0 0 3
Data
LO-FSH-MD master data 0 1 1 0 2
Basic
SD-SLS-GF 1 0 1 0 2
Functions
Credit
SD-BF-CM 2 0 0 0 2
Management

Modified SAP Objects 10/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Application Data
Description Coding Text Others Sum
Component Dictionary
Information
FI-AA-IS 0 0 0 2 2
System
Basic
SD-BIL-GF 1 0 0 0 1
Functions
SD-SLS Sales 1 0 0 0 1
Electronic Data
SD-EDI 1 0 0 0 1
Interchange
LO-HU-BF Basic functions 1 0 0 0 1
Accounts
Receivable
FIN-FSCM-DM-
Accounting 1 0 0 0 1
AR
Process
Integration
LE-TRA Transportation 1 0 0 0 1
Metadata
BW-WHM-MTD 0 1 0 0 1
(Repository)
Other 0 1 0 3 4
Total 45 214 126 60 445

You can find all modified objects in the Modification Browser (transaction SE95). Select the checkboxes “With
Modification Assistant” and “Without Modification Assistant”. Alternatively, you can use function module
/SDF/CMO_MODI_REP_2010.
The following tables list the modified objects by object type:
M ODIFIED OBJECTS OF TYPE CODING
Description Object Type: LIMU-Name No. of modified objects
Function Group FUGR 12
Report Source Code REPS 9
Screen DYNP 7
Transaction TRAN 6
Business Add-Ins - Definitions SXSD 3
Method (ABAP Objects) METH 2
Business Add-Ins - Implementations SXCI 1
GUI Definition CUAD 1
Interface (ABAP Objects) INTF 1
Function Module FUNC 1
Package DEVC 1
Public Header (ABAP Objects) CPUB 1
Total 45

M ODIFIED OBJECTS OF TYPE DATA DICTIONARY


Description Object Type: LIMU-Name No. of modified objects
Table Definition TABD 94
Table Type Definition TTYD 48
Technical Attributes of a Table TABT 20
Data Element Definition DTED 17
Domain Definition DOMD 14
View VIEW 6
Data Element DTEL 4

Modified SAP Objects 11/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Description Object Type: LIMU-Name No. of modified objects


Table Index INDX 3
Search Help SHLP 3
View Definition VIED 2
Lock Object ENQU 2
Search Help Definition SHLD 1
Total 214

M ODIFIED OBJECTS OF TYPE TEXT


Description Object Type: LIMU-Name No. of modified objects
Single Message MESS 97
Report Texts REPT 11
Concept (Online Text Repository) - Short Texts SOTT 10
Documentation DOCU 6
Message Class MSAG 1
Function Group Texts FUGT 1
Total 126

M ODIFIED OBJECTS OF TYPE OTHERS


Object Type: LIMU-
Description No. of modified objects
Name
ABAP Query: User group AQBG 1
ABAP Query: Query AQQU 1
Form Object: Form SFPF 11
SAP Smart Form SSFO 6
Form Object: Interface SFPI 2
SAP Smart Style SSST 1
Transformation XSLT 21
Definition of a Maintenance and Transport Object TOBJ 11
Standard Task PDTS 2
RFC Service SRFC 1
Standard rule PDAC 1
Enhancement Spot ENHS 1
Ext. Index XINX 1
Total 60

Modified SAP Objects 12/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Evaluation:
There is a very large number of modified objects in the system.

Recommendation:
A large number of modifications cause high costs for continuous software maintenance and require a
significant amount of adjustment effort during solution transition events such as an upgrade or Support
Package implementation. Therefore, the number of modifications should be limited. Analyze the existing
objects and check whether they are still used. During the solution transition event in particular, an analysis
should be carried out to determine whether modifications or customer objects can be replaced by SAP
standard functionality. In some cases, they can be avoided by using SAP's standard enhancement
technology. New modifications or customer objects should only be allowed in unavoidable cases and after
a restrictive approval step.
Before modifying the system, investigate whether customizing, personalization, or implementing user exits
and Business Add-Ins (BAdIs) can fulfill your requirements.

3.2 Usage of the Modification Assistant


The Modification Assistant is a tool that supports you when modifying the standard SAP system. To use the
Modification Assistant to simplify the upgrade process, you branch to a special modification mode whenever you
are modifying standard objects in an ABAP Workbench editor. Objects that are not original in the system are
initially protected in this mode and can only be changed with the help of the additional pushbuttons that are placed
at your disposal.
M ODIFIED OBJECTS OF TYPE CODING
Object No. of With
Type: modifie Modifi.
Description
LIMU- d Assista
Name objects nt
Public Header (ABAP Objects) CPUB 1 1
Method (ABAP Objects) METH 2 2
Screen DYNP 7 6
Function Module FUNC 1 1
INCLUDE program REPS 7 5
Business Add-Ins - Implementations SXCI 1 1
Sum 19 16

Evaluation:
15.79% of all code modifications were performed without the SAP Modification Assistant. This is a high
value.

Recommendation:
All modification operations should be executed with the SAP Modification Assistant. This provides you with
a detailed overview of modifications that is easy to read and that dramatically reduces the amount of effort
needed to upgrade your system.

3.3 Modified Objects in the Analysis Period


We counted the modifications that were performed in the analysis period from 01.12.2017 to 31.05.2018.
M ODIFIED OBJECTS IN THE ANALYSIS PERIOD
Sub
Application Object Type Object Name Sub Name
Type
CLFIEU_CUST_CHECKS_TAX_ CLFIEU_CUST_CHECKS_TAX_DATA
FI-LOC CLAS REPT
DATA ===CP
CL_FIPT_TAXONOMY============
FI-LOC CLAS CL_FIPT_TAXONOMY REPT
==CP
FI-LOC DOMA FIPT_TAX_LIKE DOMD FIPT_TAX_LIKE
FI-LOC DOMA FIWT_FORMNAME DOMD FIWT_FORMNAME
FI-LOC DOMA WT_FORMTYPE DOMD WT_FORMTYPE

Modified SAP Objects 13/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Sub
Application Object Type Object Name Sub Name
Type
FI-LOC DOMA WT_US_EIN_IND DOMD WT_US_EIN_IND
FI-LOC DTEL FIWTUS_TAX_ID DTED FIWTUS_TAX_ID
FI-LOC DTEL FIWT_FORMNAME2 DTED FIWT_FORMNAME2
LO-FSH-
DTEL FSH_ARUN_COMP DTEL FSH_ARUN_COMP
ARN
LO-FSH-
DTEL FSH_ARUN_DEL DTEL FSH_ARUN_DEL
ARN
LO-FSH-
DTEL FSH_ARUN_DET DTEL FSH_ARUN_DET
ARN
LO-FSH-
DTEL FSH_ARUN_LOG DTEL FSH_ARUN_LOG
ARN
FI-LOC FUGR FIEU_SAFT2 DYNP SAPLFIEU_SAFT2 0002
FI-LOC FUGR FIEU_SAFT2 FUGR FIEU_SAFT2
FI-LOC FUGR FIPT_SAFT_MV DYNP SAPLFIPT_SAFT_MV 0003
FI-LOC FUGR FIPT_SAFT_MV FUGR FIPT_SAFT_MV
FI-LOC FUGR FIPT_SAFT_MV REPT SAPLFIPT_SAFT_MV
FI-LOC MSAG FIEU_SAFT MESS FIEU_SAFT 149
FI-LOC MSAG FIEU_SAFT MESS FIEU_SAFT 310
FI-LOC MSAG FIPT_SAFT MESS FIPT_SAFT 004
...

Total number of modified objects in the analysis period: 94.


Evaluation:
Many objects were modified during the analysis period.

Recommendation:
Review these modifications. If possible, replace these modifications with standard SAP functionality.
The following services support you in your optimization:
- The "Modification Justification Check (MJC)" service helps you validate the most critical modifications in
your system and check whether they can be replaced by standard SAP functionality. See SAP Note
1281532.
- The "Accelerated Innovation Enablement (AIE)" service allows you to evaluate new functionality and
innovation available in SAP enhancement packages. See SAP Note 1300402.

Background:
An overview of all modifications and enhancements found in your system can be displayed from the ABAP
Workbench choosing the function Overview -> Modification Browser (SE95). You can also display an overview
from the Repository Browser using Environment -> Modification Browser. Select the checkboxes 'With
Modification Assistant' and 'Without Modification Assistant'.

Modified SAP Objects 14/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

4 Customer Objects

We analyzed the custom-developed objects in your system. Major problems were


detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Customer Objects in the System
Customer Objects in the Analysis Period

4.1 Customer Objects in the System


We have counted all objects in the customer name range. We count at main object level. For example, one
function group with three function modules is counted as one customer object.

We have introduced the following object types:


- Code: Transactions, programs, function groups, ...
- Data Dictionary: Tables, data elements, domains, ...
- Other: All other object types

The following table lists the number of objects per development class and object type.
CUSTOMER OBJECTS IN THE SYSTEM
Developme Data
Description Coding Others Sum
nt Class Dictionary
ZBKAW Project Breakaway 1.504 1.079 579 3.162
ZS4FN TRG S4FN SII Development 10 305 311 626
Z001 Customer development class 85 46 103 234
ZFI Avalara Extensions 13 37 4 54
$TMP Temporary Objects (never transported!) 0 0 30 30
ZINVTAPP UI5 Inventory App 6 13 1 20
ZINVENTO
Inventory Fiori App 11 2 3 16
RY_APP
ZCNV_BAT
zConversion package 14 0 0 14
CH
ZRTLE_RE
P_PROCES DDIC for Retail Replenishment Process 1 12 0 13
S_DDIC
YIDOC_CO
CKPIT_CUS
IDOC Cockpit Customer Enhancements 5 1 6 12
TOMER_EN
H
ZFIORI_RK
Package for FIORI Apps 9 0 2 11
PT
ZFBASCOR TRG Financial Accounting General Services
3 4 3 10
E 'Basis'
ZSIPT Package for Message Class SIPT 1 0 6 7
ZFIUP TRG Finance Upload Program 2 1 3 6
ZRTLE_RE UI for Retail Replenishment Process 5 0 1 6
Customer Objects 15/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Developme Data
Description Coding Others Sum
nt Class Dictionary
P_PROCES
S_VIEW
ZRTLE_RE
P_PROCES Model for Retail Replenishment Process 3 0 1 4
S_MODEL
ZHYB Package for Hybris 1 1 0 2
YIDOC_CO
CKPIT_AUT Cockpit Authorization Objects 1 0 0 1
H
ZRTLE_RE
P_PROCES Retail Replenishment Process 1 0 0 1
S
Total 1.675 1.501 1.053 4.229

The following tables show the number of customer objects by object type.
CUSTOMER OBJECTS OF TYPE CODING
Object Type: LIMU-
Description No. of customer objects Remark
Name
Program PROG 1.099 Executable Reports: 258
Transaction TRAN 191
Class (ABAP Objects) CLAS 156
Function Group FUGR 152 Function Modules: 304
Customer enhancement
CMOD 32
projects
Business Add-Ins -
SXCI 24
Implementations
Package DEVC 17
Interface (ABAP Objects) INTF 4
Total 1.675

CUSTOMER OBJECTS OF TYPE DATA DICTIONARY


Description Object Type: LIMU-Name No. of customer objects
Table TABL 735
Data Element DTEL 481
Table Type TTYP 129
Domain DOMA 77
Search Help SHLP 42
View VIEW 32
Lock Object ENQU 4
Data Definition Language Source DDLS 1
Total 1.501

CUSTOMER OBJECTS OF TYPE BUSINESS FORMS


Description Object Type: LIMU-Name No. of customer objects
Message Class MSAG 25
General Text DOCT 7
All Concepts (OTR) of a Package - Short Texts SOTR 6
SAPscript style STYL 3

Customer Objects 16/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Description Object Type: LIMU-Name No. of customer objects


Total 41

CUSTOMER OBJECTS OF TYPE OTHERS


Object Type: LIMU-
Description No. of customer objects
Name
SAP Smart Form SSFO 60
SAPscript Form FORM 33
Form Object: Form SFPF 14
SAP Smart Style SSST 14
Form Object: Interface SFPI 12
Proxy Object SPRX 559
Definition of a Maintenance and Transport Object TOBJ 107
Enhancement Implementation ENHO 103
BC Set or Customizing Profile SCP1 29
Condition Technique - Condition Table CTCT 13
RFC Service SRFC 10
Element Type SRM1 9
Number Range Objects NROB 8
IDoc Type IDOC 7
SAP Gateway BSE - Service Builder Project IWPR 6
Checkpoint Group ACID 6
Enhancement IEXT 4
Virtual End Point WEBI 4
Composite Enhancement Implementation ENHC 3
View of logical message for IDoc type IDCV 3
Other 8
Total 1.012

You can find all customer objects in transaction SE03 (Customer Objects). Alternatively, you can use function
module /SDF/CMO_GET_CUST_OBJ.
Evaluation:
The number of customer objects in the system is relatively low.

Background
It is always advisable to keep the number of custom-developed objects to a minimum by regularly removing
unused custom code. (Refer to Chapter 1 of this report for information on tools available to retire unused objects.)

For customer objects that are actively being used, there are several tools available to assist customers in
identifying opportunities to replace Custom Objects (or SAP Modified) with new features available in SAP
Standard.

Review SAP modifications. If possible, replace these modifications with standard SAP functionality.

The following services support you in your optimization:

- With the "Modification Justification Check (MJC)" service, SAP will assist in validating whether a custom
development object could be avoided or replaced with SAP Standard, or whether it could take advantage of the
existing enhancement framework to protect the custom code during a future solution transition event. The MJC
can be delivered on a newly planned custom object before it is actually created, or an existing custom object.

See SAP Note 1281532.

- The "Accelerated Innovation Enablement (AIE)" service allows you to evaluate new functionality and innovation
available in SAP enhancement packages. See SAP Note 1300402.
Customer Objects 17/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Additional analysis tools are available directly in your managed system using the Analysis of Custom Code
Applications (CCAPPS) transaction sdf/cd_cca. This offers many features in analyzing custom code in your
landscape, for example:
SAP Modification Overview: Get an overview of your SAP modifications
Clone Finder: Clone Finder will look for customer objects in your customer namespace that are identical or very
similar to SAP Standard objects. These are ideal candidates to analyze whether they can be replaced with the
SAP Standard object.

The value map for Custom Code Management includes a chapter that can help you to address replacing custom
code with SAP Standard.

4.2 Customer Objects in the Analysis Period


In this section, only the customer objects that were created or changed in the analysis period from 01.12.2017 to
31.05.2018 are listed.
CUSTOMER OBJECTS
Data
Developm
Description Coding Dictionar Others Sum
ent Class
y
ZBKAW Project Breakaway 298 169 164 631
ZS4FN TRG S4FN SII Development 10 305 311 626
Z001 Customer development class 7 2 1 10
ZFBASCO
TRG Financial Accounting General Services 'Basis' 3 4 3 10
RE
ZFIORI_R
Package for FIORI Apps 5 0 1 6
KPT
ZFIUP TRG Finance Upload Program 1 0 1 2
YIDOC_C
OCKPIT_
IDOC Cockpit Customer Enhancements 1 0 0 1
CUSTOM
ER_ENH
Total 325 480 481 1.286

Evaluation:
The number of customer objects that were created or changed in the analysis period is very high. This
means that you created a lot of customer objects recently.

Recommendation:
Determine whether the required functionality can be achieved with customizing or personalization instead
of custom code.
The following services support you in your optimization:
- The "Modification Justification Check (MJC)" service helps you validate the most critical custom code in
your system and to check whether it can be replaced by standard SAP functionality. See SAP Note
1281532.
- The "Accelerated Innovation Enablement (AIE)" service allows you to evaluate new functionality and
innovation available in SAP enhancement packages. See SAP Note 1300402.

Background
Most SAP systems contain not only standard software, but also custom-developed objects for a given company's
specific needs.

As the number of customer-specific objects increases, maintaining them becomes more and more challenging. In
particular, it is difficult to determine which of the custom-developed objects are actually used and which ones have
become obsolete.

During upgrades, support package installation, and other technical changes (such as system consolidation
activities), each custom-developed object in the relevant SAP system must be assessed in terms of its possible
impact. Each obsolete custom-developed object causes unnecessary effort. In addition, it is difficult to estimate
the amount of work required for upgrades because not enough information is available about the custom-
Customer Objects 18/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

developed objects and the necessary changes to these objects.


Companies that use the same custom-developed objects in several production systems face the additional
challenge of having to ensure that these objects are up to date and consistent in all the relevant systems.

Usually, the reason for creating custom code is the lack of a corresponding functionality within SAP standard
code. With SAP's enhancement package strategy, it is quite possible that the functionality that was missing at the
time the custom code was developed has since become available or will be available in an upcoming package.
For more information about the enhancement package concept and detailed descriptions of the new functionality,
see http://service.sap.com/erp-ehp (SAP Service Marketplace ).

Customer Objects 19/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

5 Enhancements

We analyzed the customer enhancements in your system. Some problems were


detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Enhancements in the System
Enhancements in the Analysis Period

5.1 Enhancements in the System


SAP NetWeaver offers a variety of options for enhancing and adjusting standard code to meet your requirements.
Upward compatibility is safeguarded since SAP ensures that the call of an enhancement from the standard
software and the calling interface will remain stable in future releases.

The following table shows the application components with the most customer enhancements. The following
enhancement types are included: appends, customer exits, classic BAdIs, and enhancement implementations.
COMPONENTS WITH MOST ENHANCEMENTS
Enhance
Customer
Component Description BADI Append ment Sum
Exit
Spots
LO-MD-MM Article Master 0 4 3 2 9
FI Financial Accounting 0 0 1 5 6
LO-FSH-ARN Allocation run 0 0 2 4 6
SD-MD-MM Article Maintenance 0 0 6 0 6
SD-BIL Billing 0 1 0 5 6
SD-MD-CM Conditions 0 0 4 1 5
MM-IM Inventory Management 0 1 0 4 5
LE-TRA Transportation 0 1 1 2 4
BC-MID-ALE ALE Integration Technology 0 2 0 2 4
MM-PUR-RPL Replenishment 0 1 0 2 3
SD-BF-OC Output Determination 0 0 2 1 3
AC-INT Accounting Interface 0 0 0 3 3
SD-SLS Sales 0 0 0 21 21
LO-MD-PL Site Master 0 1 1 0 2
LE-SHP-GF Basic Functions 0 0 2 0 2
SD-POS POS Interface 0 1 0 1 2
SD-EDI Electronic Data Interchange 0 0 0 2 2
Accounts Receivable
FIN-FSCM-DM-AR Accounting Process 0 1 0 1 2
Integration
Address
BC-SRV-ADR Management/Business 0 2 0 0 2
Address

Enhancements 20/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Enhance
Customer
Component Description BADI Append ment Sum
Exit
Spots
LO-MD-RA-ASL Assortment List 0 1 0 1 2
Other 0 7 4 41 52
Total 0 23 26 98 147

Evaluation:
The number of customer enhancements in your system is lower than the number of modifications.

Recommendation:
Always enhance the standard SAP functionality using SAP enhancement options such as BADIs, user
exits, appends, or the new options offered by the Enhancement Framework since NetWeaver 7.0. If the
various enhancement options are used very frequently, this usually indicates that business requirements
not covered by standard SAP functionalities could be implemented using a predefined enhancement
technology. This approach is preferred since it provides a more robust basis from a maintenance
perspective. Since SAP ensures that the call of an enhancement from the standard software and the calling
interface will remain stable in future releases, conflicts will not occur with future upgrades or support
package implementations.

All enhancements in the system can be found in the Repository Information System (transaction SE84) or function
module /SDF/CMO_GET_ENH_OBJECTS.

5.2 Enhancements in the Analysis Period


In this section, only enhancements created in the analysis period from 01.12.2017 to 31.05.2018 are counted.

COMPONENTS WITH MOST ENHANCEMENTS


Componen BA Appen Enhancement Su
Description Customer Exit
t DI d Spots m
LO-FSH-
Allocation run 0 0 1 4 5
ARN
SD-SLS Sales 0 0 0 5 5
LE-SHP Shipping 0 0 0 5 5
FI Financial Accounting 0 0 0 2 2
SD-BF-AC Availability Check 0 0 0 1 1
LO-FSH-
master data 0 0 0 1 1
MD
CA-GTF-
Cross-Application Mass Maintenance 0 0 0 1 1
MS
SD-BF Basic Functions 0 0 0 1 1
BC-MID-
ALE Integration Technology 0 0 0 1 1
ALE
MM-PUR Purchasing 0 0 0 1 1
LO-MD-MM Article Master 0 1 0 0 1
MM-PUR-
Replenishment 0 0 0 1 1
RPL
Total 0 1 1 23 25

Evaluation:
The number of customer enhancements in the analysis period is lower than the number of modifications.

Recommendation:
If the standard SAP functionality does not fulfill your business requirements, look for available
enhancement options such as user exits, BAdIs, or enhancement implementations.
Enhancements do not conflict with future SAP software deliveries such as support packages or upgrades.
Note that new enhancement technologies are available with the latest SAP NetWeaver releases. Refer to

Enhancements 21/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

SAP courses such as BC425 or BC427, which focus on this topic.

Background
Appends add additional fields to standard tables or structures without actually modifying them. Once the table or
structure has been activated, its runtime object contains the additional fields of the append.

Customer exits allow you to add your own functionalities to standard SAP business applications without having to
modify the original applications. SAP creates customer exits for specific programs, screens, and menus within
standard R/3 applications. These exits do not contain any functionalities. Instead, the customer exits act as hooks.
You can hang your own add-on functionality onto these hooks. Customer exits are not available for all programs
and screens found in the SAP system. You can only use customer exits if they already exist in the SAP system.
You can find available customer exits by calling transaction CMOD and choosing Utilities -> SAP Enhancements.

In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer
solutions), but instead allow for a multi-level system landscape (SAP, country-specific versions, industry solutions,
partner, customer, and so on). You can define and implement Business Add-Ins at any level of the system
landscape. The actual program code is enhanced using ABAP Objects.

SAP has supplemented the enhancement options with new technologies within the Enhancement Framework.
Modification-free enhancements can be implemented using the following technologies:
- Implicit enhancement points
- Explicit enhancement points
- Explicit enhancement sections
- New BAdIs
Implicit enhancement points require no preparation by SAP, providing a huge variety of new possibilities. For more
information about the Enhancement Framework, see the online help.

For detailed information on the SAP Enhancement Framework, see: http://www.sdn.sap.com/irj/sdn/nw-


development. For additional information on this area, SAP Education offers the BC425 (Enhancements and
Modifications) and BC427 (Enhancement Framework) courses.

Enhancements 22/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

6 Referenced SAP Standard Objects

We analyzed the referenced SAP standard objects in your system. Some problems
were detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Referenced BAPIs in the System
Referenced BAPIs in the Analysis Period

It is often necessary to call standard SAP code from custom code. SAP provides BAPIs (Business Application
Programming Interface) for this purpose. BAPIs are RFC-enabled function modules released for external usage.
SAP ensures that the BAPI and its interfaces remain stable. Wherever possible, BAPIs should be used to call
standard SAP functionalities. Do not reference standard SAP code using low-level interfaces not released for this
purpose since these interfaces may change in the future.

6.1 Referenced BAPIs in the System


You can find all references to BAPIs by running report SNIF or using function module
/SDF/CMO_GET_ENH_OBJECTS.
Evaluation:
The number of BAPI references in your system is relatively low.

Recommendation:
Always try to access standard SAP code using BAPIs, if available. SAP ensures that the BAPI and its
interfaces remain stable. You can find all available BAPIs in the BAPI Explorer (transaction BAPI).

Background:
BAPIs (Business Application Programming Interfaces) are RFC-enabled function modules that are released for
external use. SAP ensures that BAPIs and their interfaces remain stable. You can find all available BAPIs in the
BAPI Explorer (transaction BAPI).

6.2 Referenced BAPIs in the Analysis Period


Evaluation:
The number of BAPI references in the analysis period is relatively low.

Recommendation:
Always try to access standard SAP code using BAPIs, if available. SAP ensures that the BAPI and its
interfaces remain stable. You can find all available BAPIs in the BAPI Explorer (transaction BAPI).

Referenced SAP Standard Objects 23/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

7 Quality Checks

We analyzed the quality of custom code in your system. Some problems were
detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
SAP Code Inspector Analysis – GSS
SAP Custom Development Management Cockpit Checks

7.1 SAP Code Inspector Analysis - GSS


The SAP Code Inspector (transaction SCI), which is part of standard SAP NetWeaver, is a tool for checking ABAP
code and other Repository objects. The Code Inspector can be used to check the technical quality of program
code for both single development objects and large object sets, for example, all objects within a group of
development packages.

We executed the Code Inspector (SCI) as part of the SAP Custom Code Maintainability Check in your quality
assurance system. We used the "DEFAULT" check variant. It contains the following set of recommended analysis
checks that comply with SAP Best Practices for judging the quality of custom-developed code:

- Performance Checks
- Security Checks
- Syntax Check/Generation
- User Interfaces

The following table shows the number of errors, warnings, and information messages for each development class.
We listed the top 20 packages with the most code inspector errors.
Informati
Package Description Objects Errors Warnings
on
ZBKAW Project Breakaway 898 926 3427 4962
ZCNV_B
zConversion package 18 142 44 328
ATCH
Z001 Customer development class 63 37 90 490
ZFIORI_R
Package for FIORI Apps 4 28 6 60
KPT
ZINVTAP
UI5 Inventory App 4 28 4 58
P
ZINVENT
ORY_AP Inventory Fiori App 6 12 2 24
P
ZFI Avalara Extensions 10 6 4 48
ZRTLE_R
EP_PRO
Model for Retail Replenishment Process 2 4 6 0
CESS_M
ODEL
YIDOC_C
OCKPIT_
IDOC Cockpit Customer Enhancements 4 0 2 2
CUSTOM
ER_ENH
ZFBASC TRG Financial Accounting General Services 'Basis' 2 0 4 6

Quality Checks 24/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Informati
Package Description Objects Errors Warnings
on
ORE
ZRTLE_R
EP_PRO
UI for Retail Replenishment Process 2 0 6 12
CESS_VI
EW
ZS4FN TRG S4FN SII Development 4 0 0 52
Others .... 0 0 0 0
Total .... 1017 1183 3595 6042

Evaluation:
Errors occurred during the Code Inspector check.

Recommendation:
Execute a code inspection for your custom code in transaction SCI of your quality assurance system. You
can find a step-by-step description in the background text below or in the online help. Check the errors and
correct them.

Background: SAP Code Inspector:

To define and run a reusable code inspection, do the following:

1.Start the Code Inspector with transaction SCI.

2.Enter a name for your inspection in the Name field in the Inspection frame and choose Create or Change.

3.Define the object set — the programs and objects to inspect.


You can choose an existing object set. Or you can define a new object set by entering a new name in the Object
Set field and double-clicking for forward navigation.

4.Define the check variant — the checks to be done in the inspection. You can choose an existing an existing
variant (such as DEFAULT) or define a new variant by entering a new name in the field in the Check Variant
frame.

5.Run the inspection by choosing Execute. You can also run the inspection as a background job. To do so, enter a
server group (choose Maintain Server Group) and select the In Background (Periodically also) field. With this
option, you can run the inspection periodically. This is a good way to run ABAP Unit tests automatically.

6.Wait for the results. The screen shows when the inspection has finished (you may need to refresh). You can
also collect the results later. Just use the input help (F4) function of the inspection Name field to access
inspections that have already run.

7.As soon as the Executed icon shows, choose Results to see the results screen.

See also in the SAP Online Help: SAP Netweaver -> SAP Netweaver Platform -> Development Information ->
Application Development on AS ABAP -> Test and Analysis Tools in ABAP -> Code Inspector.

7.2 SAP Custom Development Management Cockpit Checks


The following quality checks were performed with the SAP Custom Development Management Cockpit (CDMC),
which is part of SAP Solution Manager Enterprise Edition. The CDMC is a tool for analyzing custom code.
The SAP Custom Development Cockpit (CDMC) provides enhanced features to identify potentially obsolete
objects, analyze the use of custom developments, and identify the potential impact of an upgrade or support
package on custom developments. This helps to calculate the effort required to adjust the custom developments
affected by an upgrade or support package installation. For more information about CDMC, see SAP Notes
1244713 and 1316694.
You can access the complete data by calling transaction CNV_CDMC in your SAP Solution Manager system.
Open the "Clearing Analysis Projects" folder and execute the Ad Hoc Analysis. Then perform the activities listed
below. You can check the results after each activity by choosing "Display Results".
SAP provides an Expert Guided Implementation Session for the Custom Development Management Cockpit. This
is remote training that enables you to set up and use the tool in your own SAP Solution Manager system. For
more information, see http://support.sap.com/esacademy -> Expert Guided Implementation Sessions.

Quality Checks 25/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

7.2.1 Syntax Errors


Total number of customer objects with syntax errors: 0.
Evaluation:
There are no customer objects with syntax errors, in the system.

7.2.2 Inactive Customer Objects


Total number of inactive customer objects: 0.
Evaluation:
There are no inactive customer objects in the system.

Quality Checks 26/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

8 Solution Documentation

We checked the documentation of your solution in SAP Solution Manager. Major


problems were detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
System Landscape Maintenance
Projects and Solutions
Business Processes

Today, IT solutions provide much more flexibility for business organizations than in previous years. However,
increased flexibility evokes increased complexity and IT organizations usually have to support more systems
which may be based on different technologies. Dependencies between the different systems must be taken into
account and IT solutions must be transparent to ensure efficient operations.

IT infrastructures and solutions have one simple goal: optimal support for the customer's business. This means
that IT has to provide information about ongoing and past business transactions so that the company can control
business processes and act according to its business goals. Companies have numerous business processes that
have a varying impact on economic success. The most important of these processes are called core business
processes. If the core business processes are disrupted, company business will be severely affected.

The following detailed analyses provide an overview of the Solution Documentation Status. Besides focusing on
core business transparency, the documentation of processes and related steps is key in facilitating the use of
multiple tools and functionalities in addition to SAP Solution Manager (for example, Accelerated Innovation
Enablement, Business Process Change Analyzer, Business Process Monitoring, and so on).

8.1 System Landscape Maintenance


We analyzed whether the production system is set up in SAP Solution Manager.
PRODUCTIVE SYSTEM M AINTAINED IN SAP SOLUTION M ANAGER
Rating Check
System available in SAP Solution Manager
RFC Read connection available

Evaluation:
The production system is connected to SAP Solution Manager and an RFC connection is available.

Recommendation:
All systems should be set up in SAP Solution Manager. At least an RFC-READ connection should be
available from Solution Manager to the managed system. This allows you to collect basic system data such
as installed software components and support package levels centrally in SAP Solution Manager.
Furthermore, this is the minimum requirement for all other Solution Manager scenarios.

8.2 Projects and Solutions


The production system is used in the following projects and solutions. In addition, the number of business
processes and business process steps is shown.
Group Type System Group Description No. of Processes No. of Steps
Solution Landscapes - Operation SAP Solution SAP Solution 0 0
Solution Landscapes - Operation Z_ECP_EWA Z_ECP_EWA 0 0

Solution Documentation 27/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Evaluation:
The production system is included in at least one project or solution landscape.

Recommendation:
The production system should be included in at least one solution.

Background: Solutions
The solution is the entirety of all system components and processes that represent a central business function or
a business area in an information system. A company will have a number of solutions in parallel in order to reflect
the different business areas and central functions in its information systems. Each solution consists of a number of
components that are either process components or system components. Since different entities of the company
may use the same business process or system components of a solution, a component may in general be part of
different solutions.

Background: Projects
Projects are the vehicle of changes. Solution planning, development, and changes are performed in projects.
Since a solution will be subject to a number of projects during its lifecycle, project documentation needs to be
considered in the solution documentation standard. To always provide accurate information on the current status
of a solution and to ensure traceability of project results, it is important to know what has been done in a project,
why was it done, and who did it. A common understanding of some IT project management essentials is also
required.

8.3 Business Processes


A business process is a set of logically related tasks performed to achieve a defined business outcome. Each
process consists of several process steps and can run across several SAP components and possibly non-SAP
software. A business process may occur in one or more business scenarios.
Evaluation:
Business processes and business process steps are not configured.

Recommendation:
At least the most important core business processes should be documented in SAP Solution Manager.

Background
SAP has provided standards that describe the minimum documentation requirements for SAP solutions and
custom code. These documents are available on SAP Service Marketplace at
http://support.sap.com/supportstandards --> List of Available SAP Standards for Solution Operations. Select
"Solution Documentation" and "Solution Documentation for Custom Development".
Expert guided implementation for solution documentation is available. This is remote training that explains the
documentation types and best documentation practices in SAP Solution Manager. After the session, you know
how to document a business process, including interfaces and custom code. You are able to use the solution
documentation assistant to newly create or verify your process structure and dedicated technical objects with the
help of the Solution Documentation Assistant. For more information, see http://support.sap.com/solutionmanager -
> Expert Guided Implementation.

Solution Documentation 28/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

9 SAP Software Maintenance

We checked the support packages and SAP Notes in your system landscape. Some
problems were detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Age of Support Packages
Consistency of SAP Support Packages
Consistency of SAP Notes
Business Functions
Consistency of Business Functions

9.1 Age of Support Packages


The table below shows the support packages applied in your QAS system.
SUPPORT PACKAGE LEVEL
Component Release Level Highest SP Implemented Shipping Date
DMIS 2011_1_731 0009 SAPK-11609INDMIS 20150720
EA-APPL 617 0010 SAPK-61710INEAAPPL 20150913
EA-DFPS 600 0027 SAPKGPDD27 20150420
EA-FIN 617 0010 SAPK-61710INEAFIN 20150913
EA-FINSERV 617 0010 SAPK-61710INEAFINSRV 20150913
EA-GLTRADE 600 0027 SAPKGPGD27 20150420
EA-HR 600 0122 SAPKGPHDC2 20150610
EA-IPPE 400 0027 SAPKGPID27 20150420
EA-PS 600 0027 SAPKGPPD27 20150420
EA-RETAIL 617 0010 SAPK-61710INEARETAIL 20150913
EAFASH 618 0006 SAPK-61806INEAFASH 20150913
ECC-DIMP 600 0026 SAPK-60026INECCDIMP 20140714
ERECRUIT 600 0027 SAPK-60027INERECRUIT 20150408
FI-CA 600 0026 SAPK-60026INFICA 20140714
FI-CAX 600 0026 SAPK-60026INFICAX 20140714
FINBASIS 747 0010 SAPK-74710INFINBASIS 20150913
FSCM_CCD 617 0010 SAPK-61710INFSCMCCD 20150913
GBAPP002 600 0010 SAPK-60010INGBAPP002 20150901
INSURANCE 600 0026 SAPK-60026ININSURANC 20140714
IS-CWM 600 0026 SAPK-60026INISCWM 20140714
IS-H 600 0040 SAPK-60040INISH 201
IS-M 600 0026 SAPK-60026INISM 20140714
IS-OIL 600 0026 SAPK-60026INISOIL 20140714

SAP Software Maintenance 29/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Component Release Level Highest SP Implemented Shipping Date


IS-PS-CA 600 0026 SAPK-60026INISPSCA 20140714
IS-UT 600 0026 SAPK-60026INISUT 20140714
LSOFE 600 0027 SAPK-60027INLSOFE 20150408
MDG_APPL 617 0010 SAPK-61710INMDGAPPL 20150909
MDG_FND 747 0010 SAPK-74710INMDGFND 20150909
OTEXVIM 750 0003 SAPK-75003INOTEXVIM 20151007
PI_BASIS 740 0012 SAPK-74012INPIBASIS 20150624
SAP_ABA 740 0012 SAPKA74012 20150624
SAP_AP 700 0033 SAPKNA7033 20150309
SAP_APPL 617 0010 SAPKH61710 20150913
SAP_BASIS 740 0012 SAPKB74012 20150729
SAP_BS_FND 747 0010 SAPK-74710INSAPBSFND 20150810
SAP_BW 740 0012 SAPKW74012 20150624
SAP_FIN 617 0010 SAPK-61710INSAPFIN 20150913
SAP_GWFND 740 0013 SAPK-74013INSAPGWFND 20150916
SAP_HR 600 0122 SAPKE600C2 20150610
SAP_UI 740 0014 SAPK-74014INSAPUI 20150903
SEM-BW 747 0010 SAPK-74710INSEMBW 20150913
SRA001 600 0008 SAPK-60008INSRA001 20150901
SRA003 600 0004 SAPK-60004INSRA003 20150901
SRA012 600 0005 SAPK-60005INSRA012 20141216
SRA013 600 0007 SRA013====600 20150805
SRA016 600 0008 SRA016====600 20150805
SRA017 600 0008 SRA017====600 20150805
SRA018 600 0007 SAPK-60007INSRA018 20150327
SRA019 600 0005 SAPK-60005INSRA019 20141216
SRA020 600 0008 SRA020====600 20150805
SRA021 600 0008 SRA021====600 20150827
ST-A/PI 01S_731 0003 SAPKITAB9T 20170912
ST-PI 740 0007 SAPK-74007INSTPI 20171009
UIX01EAP 100 0008 SAPK-10008INUIX01EAP 20150901
WEBCUIF 747 0010 SAPK-74710INWEBCUIF 20150810

Evaluation
The support package level of all software components is older than 18 months. You can find the latest
available Support Package level at https://support.sap.com/software/patches.html

Recommendation
Support package stacks should be imported at least once a year, since out-of-date support packages
cause higher maintenance overhead and require more emergency transports across the landscape.
Schedule a support package stack import within the next few months, as part of your scheduled
maintenance activities.

Benefits of implementing support packages


Support packages should be imported at least once each year. Importing support packages provides the following
benefits:
- There is a proactive solution to problems that have already been resolved for other customers.
- Support packages might be required to resolve a problem. Especially in non-ABAP systems, single corrections
with the SAP Note Assistant are not possible.
- Troubleshooting is easier at a current support package level since the number of possible root causes is
reduced.
SAP Software Maintenance 30/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

- Implementation of an SAP Note often requires the implementation of many dependent SAP Notes if the support
package level is out of date.
- Support packages contain the latest legal changes.
- Support packages are required for implementing enhancement packages (new functionality).
Support Package Stacks
Benefits of importing support package stacks include:
- Enhanced quality of single support packages since other components involved meet specific minimum
requirements, and thus corrections are less complex and of a higher quality.
- SAP test activities can focus on the required combinations (SP Stacks), meaning that the quality and
compatibility of these combinations can be improved.
- Download pages specifically tailored to SP Stacks simplify download of the required support packages and
patches.
- Application instructions specifically created for SP Stacks reduce the time and effort required to apply relevant
support packages and patches.
- Knowledge of possible restrictions and the transparency of side effects and their solutions generally improves
within the context of SP Stacks in comparison to randomly combined support packages and patches. Potential
problems can be pre-empted or resolved quickly, and operating costs can ultimately be reduced.

For more information about Support Package stacks, see SAP Service Marketplace at
https://support.sap.com/swdc . There, you can also find SAP's Support Package stack planning schedule.

9.2 Consistency of SAP Support Packages


All systems in the transport landscape should have uniform components, releases, and support package levels.
When any project consisting of a software component change (such as support package, enhancement package,
or add-on installation) is in progress, transports must be handled carefully within the landscape. All non-
emergency transports should be frozen before the project is introduced to the production support landscape. And
all changes to production should be restricted prior to the last mock-run. Inconsistent components can lead to
transport errors, increased maintenance windows, and an increased risk of production-down situations due to the
inability to properly test changes in a production-like environment. It is highly recommended to leverage a sandbox
system in order to evaluate software component changes before importing them into either a project or production
support landscape. When implementing software component changes into either a project or production support
landscape, the changes should first be implemented in a development system and then transitioned across the
landscape.

Evaluation
All systems of the transport landscape have the same Support Package level. This adheres to SAP Best
Practices.

9.2.1 Import History


The table below shows when the last Support Packages were imported into the DEV, QAS, and PRD systems.
SUPPORT PACKAGE STACK IMPORT IN THE TRANSPORT LANDSCAPE
Componen Leve
Release Support Packages Import in DEV Import in QAS Import in PRD
t l
2011_1_73
DMIS 0009 SAPK-11609INDMIS 12.04.2016 12.04.2016 12.04.2016
1
EA-APPL 617 0010 SAPK-61710INEAAPPL 27.07.2016 27.07.2016 27.07.2016
EA-DFPS 600 0027 SAPKGPDD27 12.04.2016 12.04.2016 12.04.2016
EA-FIN 617 0010 SAPK-61710INEAFIN 27.07.2016 27.07.2016 27.07.2016
EA- SAPK-
617 0010 27.07.2016 27.07.2016 27.07.2016
FINSERV 61710INEAFINSRV
EA-
600 0027 SAPKGPGD27 12.04.2016 12.04.2016 12.04.2016
GLTRADE
EA-HR 600 0122 SAPKGPHDC2 12.04.2016 12.04.2016 12.04.2016
EA-IPPE 400 0027 SAPKGPID27 12.04.2016 12.04.2016 12.04.2016
EA-PS 600 0027 SAPKGPPD27 12.04.2016 12.04.2016 12.04.2016
SAPK-
EA-RETAIL 617 0010 27.07.2016 27.07.2016 27.07.2016
61710INEARETAIL
EAFASH 618 0006 SAPK-61806INEAFASH 27.07.2016 27.07.2016 27.07.2016

SAP Software Maintenance 31/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Componen Leve
Release Support Packages Import in DEV Import in QAS Import in PRD
t l
SAPK-
ECC-DIMP 600 0026 10.10.2014 10.10.2014 10.10.2014
60026INECCDIMP
SAPK-
ERECRUIT 600 0027 12.04.2016 12.04.2016 12.04.2016
60027INERECRUIT
FI-CA 600 0026 SAPK-60026INFICA 10.10.2014 10.10.2014 10.10.2014
FI-CAX 600 0026 SAPK-60026INFICAX 10.10.2014 10.10.2014 10.10.2014
SAPK-
FINBASIS 747 0010 27.07.2016 27.07.2016 27.07.2016
74710INFINBASIS
FSCM_CC SAPK-
617 0010 27.07.2016 27.07.2016 27.07.2016
D 61710INFSCMCCD
SAPK-
GBAPP002 600 0010 27.07.2016 27.07.2016 27.07.2016
60010INGBAPP002
INSURANC SAPK-
600 0026 10.10.2014 10.10.2014 10.10.2014
E 60026ININSURANC
IS-CWM 600 0026 SAPK-60026INISCWM 10.10.2014 10.10.2014 10.10.2014
IS-H 600 0040 SAPK-60040INISH 13.10.2014 13.10.2014 13.10.2014
IS-M 600 0026 SAPK-60026INISM 10.10.2014 10.10.2014 10.10.2014
IS-OIL 600 0026 SAPK-60026INISOIL 10.10.2014 10.10.2014 10.10.2014
IS-PS-CA 600 0026 SAPK-60026INISPSCA 10.10.2014 10.10.2014 10.10.2014
IS-UT 600 0026 SAPK-60026INISUT 10.10.2014 10.10.2014 10.10.2014
LSOFE 600 0027 SAPK-60027INLSOFE 12.04.2016 12.04.2016 12.04.2016
MDG_APP SAPK-
617 0010 27.07.2016 27.07.2016 27.07.2016
L 61710INMDGAPPL
SAPK-
MDG_FND 747 0010 27.07.2016 27.07.2016 27.07.2016
74710INMDGFND
SAPK-
OTEXVIM 750 0003 19.08.2016 19.08.2016 19.08.2016
75003INOTEXVIM
PI_BASIS 740 0012 SAPK-74012INPIBASIS 27.07.2016 27.07.2016 27.07.2016
SAP_ABA 740 0012 SAPKA74012 27.07.2016 27.07.2016 27.07.2016
SAP_AP 700 0033 SAPKNA7033 12.04.2016 12.04.2016 12.04.2016
SAP_APPL 617 0010 SAPKH61710 27.07.2016 27.07.2016 27.07.2016
SAP_BASI
740 0012 SAPKB74012 27.07.2016 27.07.2016 27.07.2016
S
SAP_BS_F SAPK-
747 0010 27.07.2016 27.07.2016 27.07.2016
ND 74710INSAPBSFND
SAP_BW 740 0012 SAPKW74012 27.07.2016 27.07.2016 27.07.2016
SAP_FIN 617 0010 SAPK-61710INSAPFIN 27.07.2016 27.07.2016 27.07.2016
SAP_GWF SAPK-
740 0013 27.07.2016 27.07.2016 27.07.2016
ND 74013INSAPGWFND
SAP_HR 600 0122 SAPKE600C2 12.04.2016 12.04.2016 12.04.2016
SAP_UI 740 0014 SAPK-74014INSAPUI 12.04.2016 12.04.2016 12.04.2016
SEM-BW 747 0010 SAPK-74710INSEMBW 27.07.2016 27.07.2016 27.07.2016
SRA001 600 0008 SAPK-60008INSRA001 27.07.2016 27.07.2016 27.07.2016
SRA003 600 0004 SAPK-60004INSRA003 27.07.2016 27.07.2016 27.07.2016
SRA012 600 0005 SAPK-60005INSRA012 27.07.2016 27.07.2016 27.07.2016
SRA013 600 0007 SRA013====600 12.04.2016 12.04.2016 12.04.2016
SRA016 600 0008 SRA016====600 12.04.2016 12.04.2016 12.04.2016
SRA017 600 0008 SRA017====600 12.04.2016 12.04.2016 12.04.2016

SAP Software Maintenance 32/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Componen Leve
Release Support Packages Import in DEV Import in QAS Import in PRD
t l
SRA018 600 0007 SAPK-60007INSRA018 27.07.2016 27.07.2016 27.07.2016
SRA019 600 0005 SAPK-60005INSRA019 27.07.2016 27.07.2016 27.07.2016
SRA020 600 0008 SRA020====600 12.04.2016 12.04.2016 12.04.2016
SRA021 600 0008 SRA021====600 12.04.2016 12.04.2016 12.04.2016
ST-A/PI 01S_731 0003 SAPKITAB9T 16.04.2018 16.04.2018 16.04.2018
ST-PI 740 0007 SAPK-74007INSTPI 16.04.2018 16.04.2018 16.04.2018
SAPK-
UIX01EAP 100 0008 27.07.2016 27.07.2016 27.07.2016
10008INUIX01EAP
SAPK-
WEBCUIF 747 0010 27.07.2016 27.07.2016 27.07.2016
74710INWEBCUIF

Background
Support packages should be applied in the development system first, and after appropriate testing, moved across
the landscape. This allows for time to resolve any issues before support packages are moved into production.
For business critical systems, it might make sense to import the support packages into a sandbox system first and
test the impact on the core business processes there.

9.3 SAP Notes


The table below shows the number of SAP Notes implemented with SAP Note Assistant by component.
SAP NOTE ASSISTANT
Components Number of SAP Notes implemented with SAP Note Assistant
LO 279
XX 52
FI 37
PP 25
IS 10
BC 6
SD 5
CO 3
CA 2
HAN 2
SV 2
MM 1

Evaluation
424 SAP Notes are applied in your production system with the implementation status "Completely
Implemented".

Background
The SAP Note Assistant is a powerful tool used to implement specific SAP Notes rapidly. The SAP Note Assistant
makes it easy to install specific corrections to SAP components. It also recognizes any dependencies of SAP
Notes, Support Packages, and modifications that have already been implemented, which helps ensure that you
implement all the appropriate fixes for your SAP component. These capabilities make the SAP Note Assistant a
useful complement to our support services. For more information, see SAP Note 560756 - Note Assistant Version
1.2: Important notes.
SAP HotNews and SAP TopNotes
The following SAP Note categories are of particular importance and should be monitored proactively.
-HotNews are SAP Notes with priority 1. They describe problems that can result in system downtimes or data
inconsistencies. They should be monitored proactively and implemented on demand.
-Security Notes are notes that improve the security of your SAP systems. New Security Notes are published on
the second Thursday of every month.
-Legal Change Notes implement legal requirements in an SAP system. If the changes are mandatory, they must
be implemented immediately.

SAP Software Maintenance 33/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

-TopNotes are calculated on a monthly basis for each application component. These SAP Notes have been
attached most frequently to customer messages in the past two months. They solve current problems facing many
customers.

You can display and subscribe to these SAP Notes using the "/notes" quick link on SAP Service Marketplace. The
personalization interface enables you to create several filters based on your system landscape.
The corresponding "System Recommendations" application in SAP Solution Manager also shows these SAP
Notes. It automatically considers the installed software versions and SAP Notes in your system landscape. You
can access it in the Change Management work center.

9.4 Consistency of SAP Notes


In this check, we analyzed the consistency of SAP Notes. The following list contains all SAP Notes that have an
inconsistent implementation status in one system or that are not implemented in all systems of the transport
landscape.
INCONSISTENT SAP NOTES
SAP Note Implementation Status in DEV Implementation Status in QAS
1979808 Incompletely implemented Incompletely implemented
2207894 Incompletely implemented Incompletely implemented
2230462 Incompletely implemented Incompletely implemented
2240297 Incompletely implemented Incompletely implemented
2315383 Incompletely implemented Incompletely implemented
2336976 Incompletely implemented Incompletely implemented

Total number of inconsistent SAP Notes: 6.


Evaluation
We identified that there are some SAP Notes in an inconsistent implementation status across the transport
landscape. Inconsistent application of SAP Notes could result in production downtime. As a result of these
inconsistencies, the status of an object in one system may be higher or lower when compared with another
system in the landscape. This could cause failed transports and unpredictable test results. For example, if
an SAP Note is not completely implemented in development and quality systems but has been completely
implemented in production, any changes to that object in development and quality will not be valid for
production.

Recommendation
Use the SAP Note Assistant (transaction SNOTE) to check and resolve the SAP Notes with an inconsistent
implementation status. Download and implement the latest versions again in DEV and transport them to all
systems in the transport landscape.

Background
Configuration validation in SAP Solution Manager keeps track of which SAP Notes have been implemented in
which systems. Other configuration items such as transports requests or system parameters, can also be tracked.
For more information about this tool, see http://service.sap.com/changecontrol.
Expert guided implementation for configuration validation is available. This is remote training that enables you to
set up and use the tool in your own Solution Manager system. See http://service.sap.com/solutionmanager ->
Expert Guided Implementation.

9.5 Business Functions


As part of our ongoing commitment to deliver innovation without disruption, the methodology for delivering new
functionality has changed significantly. SAP enhancement packages, in combination with the Switch Framework,
allows you to implement new functionality selectively. Only software components that are required for certain
functionality need to be enhanced. In addition, new functionality is deactivated by default. Individual business
functions can be activated selectively. As a result, customers can isolate the impact of software updates and bring
new functionality online faster through shortened testing cycles.

The following tables contain an overview the use of business functions in your production system.
ACTIVATED BUSINESS FUNCTION SET
Business Function Set Description
ISR_RETAIL AP Retail

SAP Software Maintenance 34/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

ACTIVATED BUSINESS FUNCTIONS IN THE BUSINESS FUNCTION SET


Business Function Set Description
ISR_RETAILSYSTEM Retail Enhancements

ACTIVATED ENTERPRISE EXTENSIONS


Business Function Set Description
EA-FIN Financials Extension
EA-RET Retail
EA-FS Financial Services

ACTIVATED ENTERPRISE BUSINESS FUNCTIONS


Business Function Set Description
/KYK/GEN_AIO_SIMPLIFICATION SAP All-In-One Roles
ISR_EARET_PLANNING Retail,Planning & Master Data EA
ISR_RETAIL_BONUS_BUY Retail, Bonus Buy
ERP_ENTERPRISESEARCH Enterprise Search
FIN_FSCM_CCD_INTEGRATION FSCM Integration 2
FIN_FSCM_CCD_INTEGRATION_3 FSCM Integration 3
FIN_FSCM_INTEGRATION FSCM Integration
ISR_APPL_POS_INTEG Retail, POS Integration via IDoc
ISR_APPL_USABILITY Retail, Usability
ISR_RETAIL_PLANNING Retail, Planning & Master Data
ISR_RET_PERISH_PROCUREMENT Retail, Perishables Procurement
LOG_SEGMENTATION_02 Segmentation Part II
LOG_MM_CI_1 Materials Management
LOG_MM_CI_2 Material Management Purchasing
LOG_MM_CI_3 Enhancements in Procurement
LOG_MM_OM_2 Outsourced Mfg 2 in ERP OPS
LOG_PPH_MDPSX_READ MRP Performance Optimizations
LOG_SD_CI_01 Sales & Distribution
FASHION_03 FMS 1.6
LOG_SD_SIMP_02 S&D Simplification 2
LOG_SEGMENTATION Segmentation
OPS_ADVRETURNS_1 Advanced Returns Management
SD_01 Logistics S&D Simplification
ISR_RETAIL_BUYING Retail, Buying
ISR_RETAIL_CHAR_VALUES Business Function for Char Value
ISR_RETAIL_CI Retail, Contin.Improvements EA
ISR_RETAIL_DSD Retail, Direct Store Delivery
ISR_RETAIL_DSD_2 Retail, Direct Store Delivery 2
ISR_RETAIL_ENH_MAT_SEARCH Retail, MM Enh. Mat. Search
HI_FASHION_01 Business for High Fashion Brands
ISR_RETAIL_USABILITY Retail, Usability EA
ISR_RETAIL_STORE_4 Retail, In-Store MIM
ISR_RETAIL_STORE_3 Retail, Store & Multichannel 3
ISR_RETAIL_STORE_2 Retail, Store & Multichannel 2

SAP Software Maintenance 35/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Business Function Set Description


ISR_RETAIL_STORE Retail, Store & Multichannel
ISR_RETAIL_POS_INTEG Retail, POS Integration
ISR_RETAIL_PODATELINES Datelines in Classical PO
ISR_RETAIL_PERISH_PROCUREMENT Retail, Perishables Procure EA
ISR_RETAIL_MAP_IF2 Retail, MAP Interface 2
ISR_RETAIL_MAP_IF Retail, MAP Interface
FASHION_02 Feature Pack 1 for FMS 1.0
FASHION_01 Fashion 1.0
FIN_FSCM_CCD_3 FSCM Functions 3
FIN_FSCM_CCD_2 FSCM Functions 2
FIN_FSCM_CCD FSCM Functions
LOG_SD_CI_02 Sales & Distribution 2
LOG_SEGMENTATION_03 Segmentation Part III

Evaluation
Business functions are activated in your production system. You are using SAP technology for accelerated
innovation enablement.

Background
Familiarize yourself with the enhancement package technology and the Switch Framework. For more information
on enhancement packages for ERP, see http://service.sap.com/erp-ehp. In addition, we provide the Accelerated
Innovation Enablement service as part of Enterprise Support. For more information, see SAP Note 1300402.

9.6 Consistency of Business Functions


In this check, we analyzed whether the same business functions are activated in your development, test, and
production systems.
Total number of inconsistent business functions: 0.
Evaluation
All business functions have the same activation state in your landscape. No inconsistencies exist.

SAP Software Maintenance 36/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

10 Transports

We analyzed the transports in your system landscape. Some problems were


detected. See the overview of ratings in the table below.

OVERVIEW OF RATINGS
Rating Check Performed
Number of Transport Requests
Number of Objects in Transport Requests
Source Systems of Transport Requests
Most Frequently Changed Objects in the Analysis Period
Import Errors

10.1 Number of Transport Requests


This check counted the number of transports in the analysis scope. Customizing, Workbench, Transports of
Copies, and Relocation transport types were taken into account.

TRANSPORTS INTO QUALITY ASSURANCE SYSTEM IN THE PERIOD

Request Category Number


Workbench and Relocation Request 559
Customizing Request 308
Transport of Copies 1
Sum 868

Evaluation
The average number of transport requests per month is moderate compared to other customers. This
indicates that no major project activities are underway. However, some functional enhancements and
maintenance activities are still performed in your system.

10.2 Number of Objects in Transport Requests


In this check, we counted the average number of objects in transport requests in the analysis period.
AVERAGE NUMBER OF OBJECTS IN TRANSPORT REQUESTS
Request Category Number
Average Number of Objects in Workbench and Relocation Requests 11.83
Average Number of Objects in Customizing Requests 6.89
Average Number of Objects in Transports of Copies 354.00
Average Number of Objects in Transport Requests 10.47

Transports 37/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Evaluation
The average number of objects in transport requests is high. Changes should be bundled in large transport
requests to avoid large numbers of dependencies between different transport requests. Furthermore,
changes can be imported to the production system much faster if the number of transport requests is low.

The following table shows the number of objects by category that were transported to the production system in the
analysis period. The number of objects is counted at E071 line item level. For example, one cluster view that
consists of multiple Customizing views and tables is counted as one object only.
BIGGEST TRANSPORT REQUESTS IN THE ANALYSIS PERIOD
Typ
Request User Date Short Text No. of Objects
e
ECDK9130 CARRU 2018031
K IDT-1127:S4FN SII Add-On (Package Reassignment) 626
51 THO 5
ECDK9100 SALUNP 2018031
K IDT-910 OSS Notes for SAP_FIN 7 578
67 RA 3
SPDK9001 2018031
T UCELIK S4FN SII RC 2.51 354
98 5
ECDK9031 DWIVEP 2018012
W Open Text BC sets Activation_DWIVEPAN 297
57 AN 5
ECDK9105 SALUNP 2018031
K IDT-910 OSS Notes for SAP_FIN 9 267
58 RA 3
ECDK9107 KUMAR 2018031
K IDT-1127 EU-FI_S4FN SII Add-On 246
08 SUM 5
ECDK9129 CARRU 2018031
K Note 2468627 Reimplement 220
40 THO 3
ECDK9124 KUMAR 2018031
K IDT-1127 SII SOAP0 Proxy Structure 210
73 SUM 5
ECDK9123 KUMAR 2018031
K TEST EU-FI_S4FN - SIISOAP0 DO NOT TRANSPORT 204
94 SUM 5
ECDK9106 SALUNP 2018031
K IDT-910 OSS Notes for SAP_FIN 11 196
28 RA 3
...

This check counted the number of transports in the analysis scope. Customizing, Workbench, Transports of
Copies, and Relocation transport types were taken into account.
Object Category Number
Client specific customizing 908
Workbench objects (SAP) 3454
Workbench objects (Customer) 2041
DDIC objects (Customer) 504
HANA Transport Container 3
DDIC objects (SAP) 417
Cross client customizing 158
Authorization 1241
BW Objects 6
Workbench objects (Partner) 4
Sum 8736

10.3 Source Systems of Transport Requests


The following check provides information about the different source systems that have been used to create
transport requests.
All transport requests should be created in the same development system.
If you have more than one source system with many transport requests, we recommend that you review the

Transports 38/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

reasons for this.


If you have systems that have only been used temporarily (for example, for project purposes), the time between
the dates of the first and last imports should correspond to the project duration. We included all the "Customizing",
"Workbench", "Relocation", and "Transport of Copies" transport requests in the analysis.
TABLE OF DIFFERENT SOURCE SYSTEMS
Source Systems Number of transports Date of first import Date of last import
ECD 861 01.12.2017 31.05.2018
ECP 6 14.05.2018 15.05.2018
SPD 1 15.03.2018 15.03.2018

Evaluation
Almost all transport requests come from the development system. This is the recommended procedure.

10.4 Most Frequently Changed Objects in the Analysis Period


In this section, we analyzed repository, data dictionary, and BW objects that were changed most frequently in the
analysis period.
M OST FREQUENTLY CHANGED O BJECTS
No. of
Frequent
Developmen
Object Changes in
t Class
analysis
period
LIMU REPS ZFMS_CREA_ARTMAS09_PLM ZBKAW 8
LIMU REPS ZFMS_CREA_ARTMAS09_SELSCR ZBKAW 8
LIMU METH
ZARTCL_ARTICLE_MASTER_CREATIONZARTII_ARTICLE_MASTER_CREATIO ZBKAW 8
N~ARTICLE_MASTER_CREATION_IN
LIMU REPS ZINOTCE_MV45AFZZ_IMP ZBKAW 6
LIMU REPS ZXEDFU02_EDI810 ZBKAW 5
LIMU REPS ZINOTC_MCHANGE_F01 ZBKAW 5
LIMU FUNC Z_PLM_FMS_PREP_STYLE ZBKAW 4
LIMU REPS ZOTCI_846_OIDOC_QTY_F01 ZBKAW 4
LIMU REPS ZP2PE_INV_SYNC_COMP_FINAL ZBKAW 4
LIMU REPS ZFMS_ART_INF_WRKB_I01 ZBKAW 3
...
Total number of frequent changes 16

Evaluation
Some of the objects are changed frequently. This indicates that the business requirements were not well
understood when the development was initiated. A large number of changes to a single object also
indicates that the testing outlay in the quality system is insufficient and does not correspond to the business
requirements.

Recommendation
Improve the description of the development requirements. The requirements must be clear and well-
communicated between the business and development departments before development starts. Ideally, a
tool should be in place to record all change requests. The changes should be discussed in a Change
Advisory Board before being forwarded to the development department. SAP Solution Manager provides a
workflow for managing the entire Change Request Management process.
Compliance with the development specifications must be validated during the testing phases of the project
to help reduce the number of object repairs transported to production. Initial and corrective transports for
an object should be imported to production at the same time.
Transport requests must be tested before they are exported from the development system. For
Customizing changes, this can be achieved using an additional test client in the development system.
Transport requests can then be transferred to this client using transaction SCC1. For workbench requests,
you can use transports of copies to send objects to the test system. You only release the original transport

Transports 39/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

request if the test is successful. Only the original transport request is sent to production. The test transports
are not sent to production.

10.5 Import Errors


We checked the import errors of the analyzed transport requests. If the same error occurred several times, for
example, if the import was repeated several times, this was only counted as one error. If an import error was
resolved within one hour, it was not counted. The overall return code of a transport is the maximum return code of
the different transport steps. Return codes of less than 0008 are warnings only and can usually be ignored.
NUMBER OF TRANSPORTS WITH IMPORT ERRORS
Indicator Value
Number of transport requests with import errors 17
Total number of transport requests 868
Amount of transport requests with import errors 1.96%

Evaluation
The number of transport errors was low. This shows that imports are tested sufficiently in the quality
assurance system and that the quality assurance system is operating correctly.

The following table lists the biggest transport requests with import errors.
BIGGEST TRANSPORT REQUESTS WITH IMPORT ERRORS
Transport Date Errorneous Objects All Objects in Request
ECDK910067 13.03.2018 17 578
ECDK910628 13.03.2018 8 196
ECDK905598 18.12.2017 5 186
ECDK910816 18.12.2017 6 165
ECDK911220 18.12.2017 2 129

The following table lists the number of errors by return code.


NUMBER OF ERRORS BY RETURN CODE
Return
Meaning No of Errors
Code
Individual objects could not be transported successfully. You need to analyze and
correct the errors. Examples of import errors: - Original object was not overwritten -
0008 17
Repaired object was not overwritten - An object could not be activated because a
dependent object was missing from the system

The following table shows the transport steps in which the errors occurred.
NUMBER OF ERRORS BY TRANSPORT STEP
Transport Step Char. Description No of Errors
Generation G Generation of imported objects 17

Steps to help avoid transport errors:


- Ensure that the development, quality assurance, and production systems are in synch. This allows you to detect
syntax errors already in the development system before you release transport requests. Transaction SREPO
allows you to compare the repository between different systems.
- Use transports of copies to send objects from the development system to the quality assurance system. If the
transport of copies results in a transport error, you can fix the original transport request in the development system
before it is released. Only the original transport request will be sent to the production system.
- Most transport errors are due to missing dependent transport requests (for example, if a table is imported but a
required data element is not yet available). Such errors can be avoided if you bundle transport requests into
releases and import all transport requests together with the “Import ALL” or “Import Project ALL” procedure.
- The Transport Execution Analysis for Projects checks for potential import errors proactively before the import
takes place. If dependent objects are different in the production system, or if they are missing, a warning is issued.
You can prevent most transport errors by using this self-service.
Transports 40/41

Confidential
SAP® Custom Code Maintainability Check 18.06.2018

Transports 41/41

Confidential

You might also like