Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  Obsolete Language Elements →  Obsolete Processing of Internal Data →  Obsolete Extracts 

INSERT - field_group

Quick Reference

Other versions: 7.31 | 7.40 | 7.54

Obsolete Syntax

INSERT dobj1 dobj2 ... INTO { header | field_group }.


This statement is used to build a structure of a field group of the extract dataset of the program, where the field group is defined using FIELD-GROUPS . A list of global flat data objects dobj can be inserted after INSERT. Specifying local data objects raises an exception. The list defines the components of the field group header or field_group. Any name can be specified directly for field_group, whereas header is a predefined name of a special field group whose components are automatically a part and a key of all other field groups. The components of a field group have the function of a pointer to data objects whose contents can be attached as a line to the extract dataset when executing the statement EXTRACT.

The statement INSERT can be used in any processing block of a program and is executed at the given time during the program execution. A field group can have different INSERT statements. Additional components can be added to a field group until the first corresponding line with EXTRACT is attached to the extract dataset. More specifically, components can only be added to the field group header until a field group of the program is extracted because it is a part of all field groups. An INSERT statement for an already extracted field group raises a non-handleable exception.

Field symbols can be specified for dobj but not dereferenced data references. A field symbol is ignored if no data object is assigned to it. Specifying a data reference raises a non-handleable exception.


  • A field group field_group to which no fields are explicitly added still contains the field of the special field group header.
  • In global classes, no field groups can be defined or edited. In methods of local classes of programs other than class pools, the statement INSERT is possible for globally defined field groups.
  • Extracts are obsolete. Internal tables are recommended instead.


In this example, three field groups are declared in the global declaration part of an executable program and its components are specified in the event block START-OF-SELECTION. The field group flight_info contains five components of the field group header and its own. The field group flight_date contains only the components of the field group header.


DATA: spfli_wa    TYPE spfli, 
      sflight_wa TYPE sflight. 

FIELD-GROUPS: header, flight_info, flight_date. 


  INSERT: spfli_wa-carrid spfli_wa-connid sflight_wa-fldate 
            INTO header, 
          spfli_wa-cityfrom spfli_wa-cityto 
            INTO flight_info. 


Non-Handleable Exceptions

  • Cause: Inserts local data objects into a field group.
  • Cause: Field group contains INSERT after sets of this set type have been extracted using EXTRACT.