ABAP Select data from SAP table ABUB into internal table

Get Example source ABAP code based on a different SAP table
  

Below is a number of ABAP code snippets to demonstrate how to select data from SAP ABUB table and store it within an internal table, including using the newer @DATA inline declaration methods. It also shows you various ways to process this data using ABAP work area, inline declaration or field symbols including executing all the relevant CONVERSION_EXIT routines specific to ABUB. See here for more generic Select statement tips.

Sometimes data within SAP is stored within the database table in a different format to what it is displayed to the user. These input/output conversation FM routines are what translates the data between the two formats.

There is also a full declaration of the ABUB table where each field has a char/string type for you to simply copy and paste. This allows you to use processing that is only available to these field types such as the CONCATENATE statement.

DATA: IT_ABUB TYPE STANDARD TABLE OF ABUB,
      WA_ABUB TYPE ABUB,
      GD_STR TYPE STRING.

DATA: lo_typedescr type REF TO cl_abap_typedescr.
DATA: lv_fieldname type fieldname.

FIELD-SYMBOLS: <FIELD> TYPE any.
FIELD-SYMBOLS: <ABUB> TYPE ABUB.

*Process all fields in table header/work area as string values
  PERFORM process_as_string_field_values CHANGING wa_ABUB.

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM ABUB
  INTO TABLE IT_ABUB.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM ABUB
*  INTO TABLE @DATA(IT_ABUB2).
*--Further methods of using ABAP code to  select data from SAP database tables

*You can also declare the header/work area using the in-line DATA declaration method
READ TABLE IT_ABUB INDEX 1 INTO DATA(WA_ABUB2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_ABUB ASSIGNING <ABUB>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<ABUB>-BUKRS = 1.
<ABUB>-ANLN1 = 1.
<ABUB>-ANLN2 = 1.
<ABUB>-BUZEI = 1.
<ABUB>-BWASL = 1.
ENDLOOP.

LOOP AT IT_ABUB INTO WA_ABUB.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_ABUB-AFABE, sy-vline,
WA_ABUB-ANBTR, sy-vline,
WA_ABUB-NAFAB, sy-vline,
WA_ABUB-SAFAB, sy-vline,
WA_ABUB-AAFAB, sy-vline,
WA_ABUB-MAFAB, sy-vline.
ENDLOOP. *Add any further fields from structure WA_ABUB you want to display... WRITE:/ sy-uline. * Aternatively use generic code to Write field values (and NAME) to screen report DO. ASSIGN COMPONENT sy-index OF STRUCTURE wa_ABUB TO <field>. IF sy-subrc <> 0. EXIT. ENDIF. WRITE:/ 'Field Value', <field>, sy-vline. gd_str = <field> . lo_typedescr ?= CL_ABAP_DATADESCR=>DESCRIBE_BY_DATA( <field> ). lv_fieldname = lo_typedescr->GET_RELATIVE_NAME( ). WRITE:/ 'Field Name', lv_fieldname. ENDDO. *Redo loop but convert all fields from internal to out value LOOP AT IT_ABUB INTO WA_ABUB. *Write horizonal line to screen report. WRITE:/ sy-uline. *Convert all fields to display/output versions using conversion routines PERFORM convert_all_field_values CHANGING wa_EKKO. ENDLOOP. *&---------------------------------------------------------------------* *& Form convert_all_field_values *&---------------------------------------------------------------------* FORM convert_all_field_values CHANGING p_EKKO LIKE wa_EKKO. DATA: ld_input(1000) TYPE c, ld_output(1000) TYPE C.

*Conversion exit ALPHA, internal->external for field ANLN1 CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ABUB-ANLN1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANLN1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field ANLN2 CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ABUB-ANLN2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANLN2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ANBTR CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ANBTR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANBTR.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field NAFAB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-NAFAB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-NAFAB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field SAFAB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-SAFAB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-SAFAB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AAFAB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AAFAB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AAFAB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field MAFAB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-MAFAB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-MAFAB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFWB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFWB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFWB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFNB CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFNB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFNB.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ERLBT CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ERLBT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ERLBT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ABGBT CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ABGBT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ABGBT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AFABT CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AFABT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AFABT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field RBWRT CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-RBWRT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-RBWRT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ANBT1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ANBT1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANBT1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field NAFA1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-NAFA1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-NAFA1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field SAFA1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-SAFA1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-SAFA1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AAFA1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AAFA1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AAFA1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field MAFA1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-MAFA1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-MAFA1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFW1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFW1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFW1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFN1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFN1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFN1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ERLB1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ERLB1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ERLB1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ABGB1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ABGB1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ABGB1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AFAB1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AFAB1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AFAB1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field RBWR1 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-RBWR1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-RBWR1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ANBT2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ANBT2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANBT2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field NAFA2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-NAFA2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-NAFA2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field SAFA2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-SAFA2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-SAFA2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AAFA2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AAFA2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AAFA2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field MAFA2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-MAFA2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-MAFA2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFW2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFW2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFW2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFN2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFN2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFN2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ERLB2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ERLB2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ERLB2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ABGB2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ABGB2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ABGB2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AFAB2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AFAB2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AFAB2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field RBWR2 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-RBWR2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-RBWR2.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ANBT3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ANBT3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ANBT3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field NAFA3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-NAFA3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-NAFA3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field SAFA3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-SAFA3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-SAFA3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AAFA3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AAFA3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AAFA3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field MAFA3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-MAFA3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-MAFA3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFW3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFW3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFW3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AUFN3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AUFN3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AUFN3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ERLB3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ERLB3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ERLB3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field ABGB3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-ABGB3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-ABGB3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field AFAB3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-AFAB3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-AFAB3.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC132, internal->external for field RBWR3 CALL FUNCTION 'CONVERSION_EXIT_AC132_OUTPUT' EXPORTING input = WA_ABUB-RBWR3 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ABUB-RBWR3.
WRITE:/ 'New Value:', ld_input.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_ABUB_STR,
BUKRS TYPE STRING,
ANLN1 TYPE STRING,
ANLN2 TYPE STRING,
BUZEI TYPE STRING,
BWASL TYPE STRING,
AFABE TYPE STRING,
ANBTR TYPE STRING,
NAFAB TYPE STRING,
SAFAB TYPE STRING,
AAFAB TYPE STRING,
MAFAB TYPE STRING,
AUFWB TYPE STRING,
AUFNB TYPE STRING,
ERLBT TYPE STRING,
ABGBT TYPE STRING,
AFABT TYPE STRING,
RBWRT TYPE STRING,
ANBT1 TYPE STRING,
NAFA1 TYPE STRING,
SAFA1 TYPE STRING,
AAFA1 TYPE STRING,
MAFA1 TYPE STRING,
AUFW1 TYPE STRING,
AUFN1 TYPE STRING,
ERLB1 TYPE STRING,
ABGB1 TYPE STRING,
AFAB1 TYPE STRING,
RBWR1 TYPE STRING,
ANBT2 TYPE STRING,
NAFA2 TYPE STRING,
SAFA2 TYPE STRING,
AAFA2 TYPE STRING,
MAFA2 TYPE STRING,
AUFW2 TYPE STRING,
AUFN2 TYPE STRING,
ERLB2 TYPE STRING,
ABGB2 TYPE STRING,
AFAB2 TYPE STRING,
RBWR2 TYPE STRING,
ANBT3 TYPE STRING,
NAFA3 TYPE STRING,
SAFA3 TYPE STRING,
AAFA3 TYPE STRING,
MAFA3 TYPE STRING,
AUFW3 TYPE STRING,
AUFN3 TYPE STRING,
ERLB3 TYPE STRING,
ABGB3 TYPE STRING,
AFAB3 TYPE STRING,
RBWR3 TYPE STRING,
MWSKZ TYPE STRING,
LNRAN TYPE STRING,
KTOPL TYPE STRING,
XINVZ TYPE STRING,
XBKZU TYPE STRING,END OF T_EKKO_STR. DATA: WA_ABUB_STR type T_EKKO_STR. DATA: ld_text TYPE string. LOOP AT IT_EKKO INTO WA_EKKO. MOVE-CORRESPONDING wa_EKKO TO WA_EKKO_STR. CONCATENATE: sy-vline
WA_ABUB_STR-BUKRS sy-vline
WA_ABUB_STR-ANLN1 sy-vline
WA_ABUB_STR-ANLN2 sy-vline
WA_ABUB_STR-BUZEI sy-vline
WA_ABUB_STR-BWASL sy-vline
WA_ABUB_STR-AFABE sy-vline
WA_ABUB_STR-ANBTR sy-vline
WA_ABUB_STR-NAFAB sy-vline
WA_ABUB_STR-SAFAB sy-vline
WA_ABUB_STR-AAFAB sy-vline
WA_ABUB_STR-MAFAB sy-vline
WA_ABUB_STR-AUFWB sy-vline
WA_ABUB_STR-AUFNB sy-vline
WA_ABUB_STR-ERLBT sy-vline
WA_ABUB_STR-ABGBT sy-vline
WA_ABUB_STR-AFABT sy-vline
WA_ABUB_STR-RBWRT sy-vline
WA_ABUB_STR-ANBT1 sy-vline
WA_ABUB_STR-NAFA1 sy-vline
WA_ABUB_STR-SAFA1 sy-vline
WA_ABUB_STR-AAFA1 sy-vline
WA_ABUB_STR-MAFA1 sy-vline
WA_ABUB_STR-AUFW1 sy-vline
WA_ABUB_STR-AUFN1 sy-vline
WA_ABUB_STR-ERLB1 sy-vline
WA_ABUB_STR-ABGB1 sy-vline
WA_ABUB_STR-AFAB1 sy-vline
WA_ABUB_STR-RBWR1 sy-vline
WA_ABUB_STR-ANBT2 sy-vline
WA_ABUB_STR-NAFA2 sy-vline
WA_ABUB_STR-SAFA2 sy-vline
WA_ABUB_STR-AAFA2 sy-vline
WA_ABUB_STR-MAFA2 sy-vline
WA_ABUB_STR-AUFW2 sy-vline
WA_ABUB_STR-AUFN2 sy-vline
WA_ABUB_STR-ERLB2 sy-vline
WA_ABUB_STR-ABGB2 sy-vline
WA_ABUB_STR-AFAB2 sy-vline
WA_ABUB_STR-RBWR2 sy-vline
WA_ABUB_STR-ANBT3 sy-vline
WA_ABUB_STR-NAFA3 sy-vline
WA_ABUB_STR-SAFA3 sy-vline
WA_ABUB_STR-AAFA3 sy-vline
WA_ABUB_STR-MAFA3 sy-vline
WA_ABUB_STR-AUFW3 sy-vline
WA_ABUB_STR-AUFN3 sy-vline
WA_ABUB_STR-ERLB3 sy-vline
WA_ABUB_STR-ABGB3 sy-vline
WA_ABUB_STR-AFAB3 sy-vline
WA_ABUB_STR-RBWR3 sy-vline
WA_ABUB_STR-MWSKZ sy-vline
WA_ABUB_STR-LNRAN sy-vline
WA_ABUB_STR-KTOPL sy-vline
WA_ABUB_STR-XINVZ sy-vline
WA_ABUB_STR-XBKZU sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.