sapdev logo background
sapdev logo sapdev logo
Comments

SAP DICTIONARY STRUCTURE ENH documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

Structure Enhancements in the ABAP Dictionary
As of Release 3.0, you can retroactively enhance the structures and data base tables of the ABAP Dictionary delivered by SAP, by using customer exits or append structures . Such changes are problematic in Unicode programs if the enhancement changes the Unicode fragment view .
For this reason, Release 6.20 introduces the option of classifying the structures and data base tables, which enables you to recognize problems associated with structure enhancements and to correct them. This classification is used during the program check to produce a warning at all places where structures are used and at which subsequent structure enhancements could cause syntax errors or modified program behavior. You can use the enhancement categories listed in the following table as classifications when defining a structure or data base table in the ABAP Dictionary.
Stage Category Meaning
1not classifiedThe structure has no enhancement category.
2not enhanceableThe structure cannot be enhanced.
3enhanceable and character-typeAll structure components and their enhancements must be character-type flat.
4enhanceable and character-type or numericAll structure components and their enhancements must be flat.
5enhanceable arbitrarilyAll structure components and their enhancements can have an arbitrary data type.
The warnings in the program check are - depending on the results of the allowed structure enhancements - divided into three stages from the following table.
Stage Test Type Meaning
Asyntax checkAn enhancement that completely exhausts the enhancement category of the affected structure, leads to a syntax error.
Benhanced checkAllowed enhancements can lead to a syntax error but but do not necessarily do so in every case.
Cenhanced checkAllowed enhancements cannot lead to syntax errors, but do lead to semantic problems as a result of modified program behavior.

Example
If the structure ddic_struc in the ABAP Dictionary is defined with flat components only, but is classified as enhanceable arbitrarily , the following program stage leads to a warning in the syntax check. If the structure were enhanced as permitted by a deep component following delivery of the program, the program would be syntactically incorrect and no longer executable. Therefore, in this case you must either classify the structure ddic_struc in the ABAP Dictionary as enhanceable and character-type , or you must forego the offset/length specification in the program.
DATA: my_struc TYPE ddic_struc,
str TYPE string,
off TYPE i,
len TYPE i.
...
str = my_struc+off(len).
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




DICTIONARY_GLOSRY
DIRECTORY_TRAVERSAL_GLOSRY




comments powered by Disqus