Professional Documents
Culture Documents
2. OVERVIEW .................................................................................................................. 9
2.1 Acronym Standard........................................................................................................................... 9
2.1.1 Module Name ........................................................................................................................ 9
2.1.2 Program Type ....................................................................................................................... 9
2.1.3 Substitution Conventions ...................................................................................................... 9
2.1.4 Prefix Usage........................................................................................................................ 10
5. FUNCTIONS .............................................................................................................. 23
5.1 Custom Function Groups ............................................................................................................. 23
7. GATEWAY ................................................................................................................. 31
7.1 Gateway Project ............................................................................................................................. 31
8. FIORI ......................................................................................................................... 32
8.1 8.1. FIORI Apps .............................................................................................................................. 32
11. TRANSACTION.......................................................................................................... 36
11.1 Dialog Transaction ........................................................................................................................ 36
In the case where a naming standard does not exist for a required object, a standard may be developed and be
included in this document. Likewise, if an existing standard proves insufficient, then this problem should be
raised and resolved with updates reflected in this document.
1.1 Coverage
The naming standards described in this document are to be used for all the developers in the
Build Team.
For example, in custom ABAP program , in custom ABAP program is for Human Resource module, the
module name is ‘HR’ .
I Interface
C Conversion
E Enhancements
W Workflow
M Others
X Any character
N Numeric
Z Use the ‘Z’ prefix for all customized objects developed by the CORE application
development Team.
Y Use for temporary programs developed by the CORE Development Team and is not
meant for production transport
Where applicable, the development objects should be given a meaningful title as well as
Short Text (i.e., Documentation).
Ensure that the custom objects are assigned to the appropriate custom package.
3.1 Package
Package is used in the Correction/Transport system. It is used to group all objects that are
related to the same development to ensure they are corrected and transported together.
Each package has an assigned integration system and an assigned consolidation system for
transports.
`
Note: Since Basis 6.xx, the term 'Development Class’ has changed to 'Package'. Therefore, the term
‘Development Class’ can be used interchangeably with the term ‘Package’.
Example: To enhance SAP Object Type INSTLN Utility Installation, then the new object type will
be ZINSTLN (maximum of 10 characters).
3.2.1 Methods
Format: (maximum of 32 characters)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Method Name
Example: GetRelatedObjects
Method Name = (GetRelatedObjects) – Related Objects
3.2.2 Container Elements
Format: (maximum of 32 characters)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Container Name
Example: Relationtype
Element Name = (Relationship type) – Relationship type (‘C’, ‘P’, ‘U’)
3.3 Workflow
A workflow definition is made up of individual steps and events with one step and one or more
events making up one unit. These units can be arranged in sequence or in parallel.
3.3.1 Workflow Template Abbreviations
Workflow identification number must begin with WS – Standard Workflow and is followed by numbers
created automatically by the workflow.
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| Module Underscore
Custom Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| Module Underscore
Custom Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| Module Underscore
Custom
Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| |
| Index number
Custom Indicator
| |
| Descriptive Text
Custom Indicator
Z XX _ X XXXXXXXXXXXXXXXX
| | | | |
| | | | Descriptive Text
| | | View Type
| | Underscore
Module
Custom
Indicator
Z XX _ TT _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | | | |
| | | Type |
Indicator
| | Underscore Underscore
| Module
Custom Indicator
3.4.6 Structures
Note: The structure name has a maximum length of 30 characters, however, if you want to use the
structure as include in a transparent table at a later time, the component names may not be
longer than 16 characters.
Z XX _ ST XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| Module Underscore | Underscore
Custom Type
Indicator
Depending on the standard release you are using, you need to check that the
upper limit of fields per table is not exceeded when you add any APPENDs.
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| Module Underscore
Custom
Indicator
Z XX _ DE _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | Underscore | Undescore
Module Type indicator
Custom
Indicator
3.4.9 Domain
Note:
▪ Wherever possible, existing SAP Domains should be used.
▪ As SAP uses all letters of the alphabet, including ‘Y’ and ‘Z’, customised domain must begin
with a ‘Z’ to distinguish them from SAP domains.
Z XX _ DM _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | Underscore | Underscore
Module Type indicator
Custom
Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
Module
| |
Custom Indicator
3 – 16 Primary Table Name Free Text The name of the primary table entered
in the primary table field of the Lock
Object create screen
| | |
| | Unique Identifier
| Module Name
Custom Indicator
4. ABAP Programs
4.1 Executable Reports and Programs
4.1.1 Custom Developed ABAP Programs
Format: (maximum of 40 characters)
Z XX _ X _ XXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | | | Under
score
| | | Program
Type
| | Under
score
| Module
Custom
Indicator
Example:
RM06EL00 -----> ZRM06EL00
Descriptive Text
| | | | |
| | | | Descriptive Text
| | | Program Type
| | Module Name
Custom Indicator
CONSTANTS : GC_*
DATA : GV_*
GS_*
GT_*
GO_*
TT_*
FIELD-SYMBOLS : <FS_*
PARAMETER(S) : P_*
SELECT-OPTIONS : S_*
CONSTANTS : LC_*
DATA : LV_*
LT_*
LS_*
LO_*
TT_*
FIELD-SYMBOLS : <LS_*
INTERFACE : ZIF_*
TYPE : TY_*
CONSTANTS : GC_*
DATA : GV_*
• Local Classes / Interfaces
CLASS : LCL_*
INTERFACE : LIF_*
TYPE : TY_*
CONSTANTS : LC_*
DATA : LV_*
• Method parameters
IMPORTING : IV_*, IT_*, IS_*, IO_*
TABLES : T_*
5. Functions
5.1 Custom Function Groups
Function groups, type F programs, are containers for function modules, and cannot be started by
entering their name directly. Function modules are special procedures that you can call from other
ABAP programs. They can be started by a transaction code if they are constructed with screen flow
support, like module pools , type M programs.
When a Function Group is created, SAP creates a program with the naming convention SAPLxxxx,
where xxxx is the name of the function group.
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| Module Underscore
Custom
Indicator
6. Class Library
Through the Class Builder, a tool within the ABAP Workbench, you may create, define, and test
global ABAP classes and interfaces.
The following naming convention has been defined by SAP for use within the SAP
namespace. If you do not observe the naming conventions for object types (classes
and interfaces), conflicts will occur when the system creates persistent badies, since it
will be unable to generate the necessary co-classes.
Namespace for Components
The naming convention has been kept as general as possible to avoid adversely influencing the
naming of objects.
6.1 Classes
Format: (maximum 30 characters)
Z XX _ CL _ XXXXXX
| | | | | |
| | | | | Descriptive
Text
| | | | Underscore
| | | |
| | | |
| | | Class
Indicator
| | Underscore
| Module
Custom
Indicator
6.2 Interfaces
Format: (maximum 30 characters)
Z XX _ IF _ XXXXXX
| | | | | |
| | | | | Descriptive
Text
| | | | Underscore
| | | |
| | | |
| | | Interface
Indicator
| | Underscore
| Module
Custom
Indicator
Class and interface names in the class library belong to the same namespace as data elements,
tables, structures, and types. They are maintained centrally in table TADIR and have a maximum
length of 30 characters.
ZHR_IF_STATUS_MANAGEMANT
(recommendation)
LCL_TREE_MANAGEMENT
(recommendation)
LIF_PRINTER
COMPONENT MEANING
Method name
<method name>
<noun>_<participle>:
TY_INTERNAL_TYPE, TY_TREE_LIST
(recommendation)
GC_MAX_LINE, GC_DEFAULT_STATUS,
GC_DEFAULT_WIDTH, GC_MAX_ROWS
Recommended naming conventions are not compulsory. However, if you use prefixes for these class and
interface names, you should use those listed above.
For Exceptions:
The following table contains a series of possible exception names that can also be used generically
(for example, NOT_FOUND could also be used as DATE_NOT_FOUND).
EXCEPTION MEANING
ACTION_NOT_SUPPORTED The requested action or function code is not supported.
CANCELLED If a method uses a dialog to find out what has to be
dome (for example, a list of choices), and the user
chooses "Cancel", you can set this exception.
EXISTING A new object that you want to create already exists in
the database.
FAILED The method could not be executed because of the
current environment.
..._FAILED Part of the method could not be completed because of
the current environment. Example OPEN_FAILED
7. Gateway
7.1 Gateway Project
Format: (maximum 30 characters)
Z XX _ XXXXXX
| | | |
| | | Descriptive
Text
| | |
| | |
| | |
| | |
| | Underscore
| Module
Custom
Indicator
Z XX _ XXXXXX
| | | |
| | | Descriptive
Text
| | |
| | |
| | |
| | |
| | Underscore
| Module
Custom
Indicator
9. CDS Views
• Use CamelCase naming for CDS View fields (not underscores);
• STOB (name after define view) and DDLS (used in CDS wizard creation wizard) MUST be the
same. CDS STOB views name should start with prefix, for example, ZC_ followed by
CamelCase name (not underscores). CDS DDLS is capitalized by the system;
• CDS View parameter names should be prefixed with P_ followed by by CamelCase name
(not underscores).
• Association names should start with _ followed by view without prefix, for example, _Material
for I_Material.
Z XX X _ XXXXXX
| | | |
| | | Descriptive
Text
| | View Type
| |
| |
| |
| |
| Module
Custom
Indicator
C – Consumption
View
Z XX C _ XXXXXX
| | | | |
| | | | Descriptive
Text
| | CDS |
Indicator
| | Underscore
| |
| |
| |
| Module
Custom
Indicator
Note: GUI Status names must be unique within the program. Should you have to create a
customised GUI Status for a SAP program, prefix the status name with the ‘Z’.
| Descriptive Text
Custom Indicator
| Descriptive Text
Custom Indicator
Note: For custom table maintenance, suggest to use the same custom table name as the
custom transaction code.
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
| |
| |
| Module
Custom
Indicator
Message Number
Note:
▪ Each message class will have a generic message, consisting of 4 substitution variables, ‘&’s
only and the message number should be 000. This corresponds to the 4 optional ‘WITH’
parameters of the ABAP MESSAGE statement.
▪ All the custom objects, including enhancements (exits, BAdI, etc) should use a message from
custom message class, so that we can identify the source of the message easily, i.e. message
from SAP standard or from custom object.
▪ Before creating the new message, you should look for an existing message in the system. Only
look for the messages that are relevant for your module. For example, if you are working with
User Groups
User Groups group several similar users together for the purpose of creating and running
ABAP queries. User Groups are named according to the SAP or Customer application area.
Format: (maximum of 12 characters)
Z XXXXXXX
| |
| Descriptive Text
Custom Indicator
Queries
Format: (maximum of 14 characters)
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
Module
Custom
Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
Module
Custom
Indicator
The LSMW must be created within a project, sub-project and object. The whole project must
be transported.
15.1 LSMW Projects
Format: (maximum of 15 characters)
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
Module
Custom
Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
Module
Custom
Indicator
| | |
| | Descriptive Text
Transaction Code
1–4 Transaction Code Free Text Transaction Code run by the LSMW
16. Event
Note:
▪ The naming convention for Event is intended for triggering of events as part of online business
processing.
▪ For events used for scheduling of Batch Jobs, the naming convention shall follow that of Batch
Job Names (See Section 25)
| | |
Custom Indicator
17. Forms
17.1 ADOBE FORMS
17.1.1 Adobe Form
Format: (maximum 30 characters)
Z XX _ AF _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | |
| | Underscore
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | |
| |
Underscore
Z XX _ SF _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | Underscore
| |
Z XX _ ST _ XXXXXXXXXXXXXXXX
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | Underscore
| |
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | Underscore
| |
| | | | | |
| | | | | Descriptive Text
| | | | Underscore
| | | Form Identifier
| | Underscore
| |
| |
Custom Indicator
Z XX _ XXXXXXXXXXXXXXXX
| | | |
| | | Descriptive Text
| | Underscore
| |
| |
| Module
Custom Indicator
17.3.4 Styles
Format: (maximum of 8 characters)
Z XXX
| Descriptive Text
Custom Indicator
In addition, field exits cannot be used for check boxes. These are deemed to be graphical elements and
have no input/output status. These values may be accessible in a user exit.
| | |
| | Customer Enhancement No
| Module Name
Custom Indicator
| | | | |
| | | | Descriptive Text
| | | Underscore
| | Definition Identifier
| Underscore
Z XX _ BI _ XXXXXXXXXXXXXXX
| | | | |
| | | | Descriptive Text
| | | Underscore
| | Implementation Identifier
| |
| | Under
score
Z XX _ ES _ XXXXXXXXXXXXXXX
| | | | |
| | | | Descriptive Text
| | | Underscore
| |
| | Under
score
| | | | |
| | | | Descriptive Text
| | | Underscore
| |
| | Underscore
| | | | |
| | | | Descriptive Text
| | | Underscore
| |
| | Underscore
| | | | |
| | | | Descriptive Text
| | | Underscore
| |
| | Underscore
| | | | |
| | | | Descriptive Text
| | | Underscore
| |
| | Underscore
| | |
| | Serial Number
| Transport Type
System ID
Note:
▪ All transport Requests will be automatically generated by the system.
▪ Workbench and Customising Request/Task use the same format and running serial number.
For the naming convention on the Transport Request Description, please refer to the documentation on
the Transport Procedure.
All transports should be assigned to a Project, please refer to the documentation on the Transport
Procedure for details of what Project to use.
The developer will release his or her own tasks within a transport request, complete all
documentation in the task, update the CR (if applicable) and inform the respective Team
Leader. The Team Leader will review the transport and release it.
| |
| Numeric Identifier
Custom Indicator
| | | |
| | | Descriptive Identifier
| | Underscore
| Module name
Custom Indicator
ABAP/4 authorization group is a means of assigning ABAP/4 programs for process protection. The
system checks that a user belongs to an authorization group when:
• Starting or editing a program.
• Maintaining attributes.
• Using other program development utilities
| | | |
| | | Numeric Identifier
| | Underscore
| Module name
Custom Indicator
5–8 Numeric Identifier 0000 - 9999 Running number to identify the unique
| | | | | | | |
| | | | | | Underscore
| | | | Underscore
| | | Module
| | Underscore
| Frequency
Custom Identifier
‘F’ Fortnightly
‘M’ Monthly
‘Q’ Quarterly
‘Y’ Yearly
‘C’ Conversions
4–5 Module HR, MM, etc SAP module,component (as per SAP
standard classification hierarchy).