The following development objects in the IDoc interface can be release-specific, that is, they can exist in different versions:
Basic types
Enhancements
Segments (each segment definition is a version of the segment)
The basic type version is usually indicated by the last two digits. In the case of segments, the last three digits indicate the relevant segment definition.
Only one version of each object may exist per release. These versions have a unique predecessor/successor relationship.
An IDoc type, which is a combination of a basic type and an extension (an extended basic type) can therefore be version-specific in several ways:
There are several versions of the basic type
There are several versions of the enhancement
There are several segment versions in the basic type
There are several segment versions in the enhancement
Any combination of the cases listed above
A successor must always have the same parts as the predecessor and at least one additional part: A new segment definition must therefore contain all the fields of its predecessor and at least one more. A successor of a basic type or extension must contain all segments of its predecessor and at least one more.
In order to be able to create a new successor, you must have released the predecessor. The object cannot be changed again after being released. The release can be canceled if no successors for the development object have been created.
Segment definitions which have not been released are assigned the default value "000" as a version number.
You should only release the objects when your development has been completed. You can also test objects which have not been released. You should only cancel releases in exceptional cases, since subsequent changes to objects which have already been used can lead to inconsistencies. Receiving systems, in particular, will not support these changes.