ABAP Select data from SAP table ERCH_ERCHP 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 ERCH_ERCHP 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 ERCH_ERCHP. 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 ERCH_ERCHP 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_ERCH_ERCHP TYPE STANDARD TABLE OF ERCH_ERCHP, WA_ERCH_ERCHP TYPE ERCH_ERCHP, 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: <ERCH_ERCHP> TYPE ERCH_ERCHP. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_ERCH_ERCHP. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM ERCH_ERCHP INTO TABLE IT_ERCH_ERCHP. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM ERCH_ERCHP * INTO TABLE @DATA(IT_ERCH_ERCHP2). *--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_ERCH_ERCHP INDEX 1 INTO DATA(WA_ERCH_ERCHP2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_ERCH_ERCHP ASSIGNING <ERCH_ERCHP>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<ERCH_ERCHP>-MANDT = 1.
<ERCH_ERCHP>-BELNR = 1.
<ERCH_ERCHP>-BUKRS = 1.
<ERCH_ERCHP>-SPARTE = 1.
<ERCH_ERCHP>-GPARTNER = 1.
ENDLOOP. LOOP AT IT_ERCH_ERCHP INTO WA_ERCH_ERCHP. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_ERCH_ERCHP-VKONT, sy-vline,
WA_ERCH_ERCHP-VERTRAG, sy-vline,
WA_ERCH_ERCHP-BEGABRPE, sy-vline,
WA_ERCH_ERCHP-ENDABRPE, sy-vline,
WA_ERCH_ERCHP-ABRDATS, sy-vline,
WA_ERCH_ERCHP-ADATSOLL, sy-vline.
ENDLOOP. *Add any further fields from structure WA_ERCH_ERCHP 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_ERCH_ERCHP 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_ERCH_ERCHP INTO WA_ERCH_ERCHP. *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 BELNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-BELNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-BELNR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field GPARTNER CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-GPARTNER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-GPARTNER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field VKONT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-VKONT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-VKONT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field VERTRAG CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-VERTRAG IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-VERTRAG.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ABWVK CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ABWVK IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ABWVK.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field BELNRALT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-BELNRALT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-BELNRALT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field KONZVER CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-KONZVER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-KONZVER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit HH_MM, internal->external for field EROETIM CALL FUNCTION 'CONVERSION_EXIT_HH_MM_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-EROETIM IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-EROETIM.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ABPOPBEL CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ABPOPBEL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ABPOPBEL.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field SC_BELNR_H CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-SC_BELNR_H IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-SC_BELNR_H.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field SC_BELNR_N CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-SC_BELNR_N IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-SC_BELNR_N.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field BILLINGRUNNO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-BILLINGRUNNO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-BILLINGRUNNO.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field MEM_OPBEL CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-MEM_OPBEL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-MEM_OPBEL.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field EXBILLDOCNO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-EXBILLDOCNO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-EXBILLDOCNO.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field BASDYPER CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-BASDYPER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-BASDYPER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ACTPERIOD CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ACTPERIOD IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ACTPERIOD.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ACTPERORG CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ACTPERORG IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ACTPERORG.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field FDGRP CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-FDGRP IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-FDGRP.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field MAINDOCNO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-MAINDOCNO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-MAINDOCNO.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ERCHP_BELNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ERCHP_BELNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ERCHP_BELNR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ERCHP_PERCREA CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ERCH_ERCHP-ERCHP_PERCREA IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ERCH_ERCHP-ERCHP_PERCREA.
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_ERCH_ERCHP_STR,
MANDT TYPE STRING,
BELNR TYPE STRING,
BUKRS TYPE STRING,
SPARTE TYPE STRING,
GPARTNER TYPE STRING,
VKONT TYPE STRING,
VERTRAG TYPE STRING,
BEGABRPE TYPE STRING,
ENDABRPE TYPE STRING,
ABRDATS TYPE STRING,
ADATSOLL TYPE STRING,
PTERMTDAT TYPE STRING,
BELEGDAT TYPE STRING,
ABWVK TYPE STRING,
BELNRALT TYPE STRING,
STORNODAT TYPE STRING,
ABRVORG TYPE STRING,
HVORG TYPE STRING,
KOFIZ TYPE STRING,
PORTION TYPE STRING,
FORMULAR TYPE STRING,
SIMULATION TYPE STRING,
BELEGART TYPE STRING,
BERGRUND TYPE STRING,
BEGNACH TYPE STRING,
TOBRELEASD TYPE STRING,
TXJCD TYPE STRING,
KONZVER TYPE STRING,
EROETIM TYPE STRING,
ERCHO_V TYPE STRING,
ERCHZ_V TYPE STRING,
ERCHU_V TYPE STRING,
ERCHR_V TYPE STRING,
ERCHC_V TYPE STRING,
ERCHV_V TYPE STRING,
ERCHT_V TYPE STRING,
ERCHP_V TYPE STRING,
ERCHE_V TYPE STRING,
ABRVORG2 TYPE STRING,
ABLEINH TYPE STRING,
ENDPRIO TYPE STRING,
ERDAT TYPE STRING,
ERNAM TYPE STRING,
AEDAT TYPE STRING,
AENAM TYPE STRING,
BEGRU TYPE STRING,
LOEVM TYPE STRING,
ABRDATSU TYPE STRING,
ABRVORGU TYPE STRING,
N_INVSEP TYPE STRING,
ABPOPBEL TYPE STRING,
MANBILLREL TYPE STRING,
BACKBI TYPE STRING,
PERENDBI TYPE STRING,
NUMPERBB TYPE STRING,
BEGEND TYPE STRING,
ENDOFBB TYPE STRING,
ENDOFPEB TYPE STRING,
NUMPERPEB TYPE STRING,
SC_BELNR_H TYPE STRING,
SC_BELNR_N TYPE STRING,
ZUORDDAA TYPE STRING,
BILLINGRUNNO TYPE STRING,
SIMRUNID TYPE STRING,
KTOKLASSE TYPE STRING,
ORIGDOC TYPE STRING,
NOCANC TYPE STRING,
ABSCHLPAN TYPE STRING,
MEM_OPBEL TYPE STRING,
MEM_BUDAT TYPE STRING,
EXBILLDOCNO TYPE STRING,
BCREASON TYPE STRING,
NINVOICE TYPE STRING,
NBILLREL TYPE STRING,
CORRECTION_DATE TYPE STRING,
BASDYPER TYPE STRING,
ESTINBILL TYPE STRING,
ESTINBILLU TYPE STRING,
ESTINBILL_SAV TYPE STRING,
ESTINBILL_USAV TYPE STRING,
ACTPERIOD TYPE STRING,
ACTPERORG TYPE STRING,
EZAWE TYPE STRING,
DAUBUCH TYPE STRING,
FDGRP TYPE STRING,
BILLING_PERIOD TYPE STRING,
OSB_GROUP TYPE STRING,
BP_BILL TYPE STRING,
DUMMY_UTILBILLGDOC_INCL_EEW_TS TYPE STRING,
MAINDOCNO TYPE STRING,
INSTGRTYPE TYPE STRING,
INSTROLE TYPE STRING,
MDUSREQUESTID TYPE STRING,
ASBACH_REL TYPE STRING,
ISU2CI_CATEGORY TYPE STRING,
COLOGRP_INST TYPE STRING,
COLOGRP_INST_L TYPE STRING,
COLOGRP_BP_TAX TYPE STRING,
ERCHP_MANDT TYPE STRING,
ERCHP_BELNR TYPE STRING,
ERCHP_PERCREA TYPE STRING,
ERCHP_AB TYPE STRING,
ERCHP_BIS TYPE STRING,END OF T_EKKO_STR. DATA: WA_ERCH_ERCHP_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_ERCH_ERCHP_STR-MANDT sy-vline
WA_ERCH_ERCHP_STR-BELNR sy-vline
WA_ERCH_ERCHP_STR-BUKRS sy-vline
WA_ERCH_ERCHP_STR-SPARTE sy-vline
WA_ERCH_ERCHP_STR-GPARTNER sy-vline
WA_ERCH_ERCHP_STR-VKONT sy-vline
WA_ERCH_ERCHP_STR-VERTRAG sy-vline
WA_ERCH_ERCHP_STR-BEGABRPE sy-vline
WA_ERCH_ERCHP_STR-ENDABRPE sy-vline
WA_ERCH_ERCHP_STR-ABRDATS sy-vline
WA_ERCH_ERCHP_STR-ADATSOLL sy-vline
WA_ERCH_ERCHP_STR-PTERMTDAT sy-vline
WA_ERCH_ERCHP_STR-BELEGDAT sy-vline
WA_ERCH_ERCHP_STR-ABWVK sy-vline
WA_ERCH_ERCHP_STR-BELNRALT sy-vline
WA_ERCH_ERCHP_STR-STORNODAT sy-vline
WA_ERCH_ERCHP_STR-ABRVORG sy-vline
WA_ERCH_ERCHP_STR-HVORG sy-vline
WA_ERCH_ERCHP_STR-KOFIZ sy-vline
WA_ERCH_ERCHP_STR-PORTION sy-vline
WA_ERCH_ERCHP_STR-FORMULAR sy-vline
WA_ERCH_ERCHP_STR-SIMULATION sy-vline
WA_ERCH_ERCHP_STR-BELEGART sy-vline
WA_ERCH_ERCHP_STR-BERGRUND sy-vline
WA_ERCH_ERCHP_STR-BEGNACH sy-vline
WA_ERCH_ERCHP_STR-TOBRELEASD sy-vline
WA_ERCH_ERCHP_STR-TXJCD sy-vline
WA_ERCH_ERCHP_STR-KONZVER sy-vline
WA_ERCH_ERCHP_STR-EROETIM sy-vline
WA_ERCH_ERCHP_STR-ERCHO_V sy-vline
WA_ERCH_ERCHP_STR-ERCHZ_V sy-vline
WA_ERCH_ERCHP_STR-ERCHU_V sy-vline
WA_ERCH_ERCHP_STR-ERCHR_V sy-vline
WA_ERCH_ERCHP_STR-ERCHC_V sy-vline
WA_ERCH_ERCHP_STR-ERCHV_V sy-vline
WA_ERCH_ERCHP_STR-ERCHT_V sy-vline
WA_ERCH_ERCHP_STR-ERCHP_V sy-vline
WA_ERCH_ERCHP_STR-ERCHE_V sy-vline
WA_ERCH_ERCHP_STR-ABRVORG2 sy-vline
WA_ERCH_ERCHP_STR-ABLEINH sy-vline
WA_ERCH_ERCHP_STR-ENDPRIO sy-vline
WA_ERCH_ERCHP_STR-ERDAT sy-vline
WA_ERCH_ERCHP_STR-ERNAM sy-vline
WA_ERCH_ERCHP_STR-AEDAT sy-vline
WA_ERCH_ERCHP_STR-AENAM sy-vline
WA_ERCH_ERCHP_STR-BEGRU sy-vline
WA_ERCH_ERCHP_STR-LOEVM sy-vline
WA_ERCH_ERCHP_STR-ABRDATSU sy-vline
WA_ERCH_ERCHP_STR-ABRVORGU sy-vline
WA_ERCH_ERCHP_STR-N_INVSEP sy-vline
WA_ERCH_ERCHP_STR-ABPOPBEL sy-vline
WA_ERCH_ERCHP_STR-MANBILLREL sy-vline
WA_ERCH_ERCHP_STR-BACKBI sy-vline
WA_ERCH_ERCHP_STR-PERENDBI sy-vline
WA_ERCH_ERCHP_STR-NUMPERBB sy-vline
WA_ERCH_ERCHP_STR-BEGEND sy-vline
WA_ERCH_ERCHP_STR-ENDOFBB sy-vline
WA_ERCH_ERCHP_STR-ENDOFPEB sy-vline
WA_ERCH_ERCHP_STR-NUMPERPEB sy-vline
WA_ERCH_ERCHP_STR-SC_BELNR_H sy-vline
WA_ERCH_ERCHP_STR-SC_BELNR_N sy-vline
WA_ERCH_ERCHP_STR-ZUORDDAA sy-vline
WA_ERCH_ERCHP_STR-BILLINGRUNNO sy-vline
WA_ERCH_ERCHP_STR-SIMRUNID sy-vline
WA_ERCH_ERCHP_STR-KTOKLASSE sy-vline
WA_ERCH_ERCHP_STR-ORIGDOC sy-vline
WA_ERCH_ERCHP_STR-NOCANC sy-vline
WA_ERCH_ERCHP_STR-ABSCHLPAN sy-vline
WA_ERCH_ERCHP_STR-MEM_OPBEL sy-vline
WA_ERCH_ERCHP_STR-MEM_BUDAT sy-vline
WA_ERCH_ERCHP_STR-EXBILLDOCNO sy-vline
WA_ERCH_ERCHP_STR-BCREASON sy-vline
WA_ERCH_ERCHP_STR-NINVOICE sy-vline
WA_ERCH_ERCHP_STR-NBILLREL sy-vline
WA_ERCH_ERCHP_STR-CORRECTION_DATE sy-vline
WA_ERCH_ERCHP_STR-BASDYPER sy-vline
WA_ERCH_ERCHP_STR-ESTINBILL sy-vline
WA_ERCH_ERCHP_STR-ESTINBILLU sy-vline
WA_ERCH_ERCHP_STR-ESTINBILL_SAV sy-vline
WA_ERCH_ERCHP_STR-ESTINBILL_USAV sy-vline
WA_ERCH_ERCHP_STR-ACTPERIOD sy-vline
WA_ERCH_ERCHP_STR-ACTPERORG sy-vline
WA_ERCH_ERCHP_STR-EZAWE sy-vline
WA_ERCH_ERCHP_STR-DAUBUCH sy-vline
WA_ERCH_ERCHP_STR-FDGRP sy-vline
WA_ERCH_ERCHP_STR-BILLING_PERIOD sy-vline
WA_ERCH_ERCHP_STR-OSB_GROUP sy-vline
WA_ERCH_ERCHP_STR-BP_BILL sy-vline
WA_ERCH_ERCHP_STR-DUMMY_UTILBILLGDOC_INCL_EEW_TS sy-vline
WA_ERCH_ERCHP_STR-MAINDOCNO sy-vline
WA_ERCH_ERCHP_STR-INSTGRTYPE sy-vline
WA_ERCH_ERCHP_STR-INSTROLE sy-vline
WA_ERCH_ERCHP_STR-MDUSREQUESTID sy-vline
WA_ERCH_ERCHP_STR-ASBACH_REL sy-vline
WA_ERCH_ERCHP_STR-ISU2CI_CATEGORY sy-vline
WA_ERCH_ERCHP_STR-COLOGRP_INST sy-vline
WA_ERCH_ERCHP_STR-COLOGRP_INST_L sy-vline
WA_ERCH_ERCHP_STR-COLOGRP_BP_TAX sy-vline
WA_ERCH_ERCHP_STR-ERCHP_MANDT sy-vline
WA_ERCH_ERCHP_STR-ERCHP_BELNR sy-vline
WA_ERCH_ERCHP_STR-ERCHP_PERCREA sy-vline
WA_ERCH_ERCHP_STR-ERCHP_AB sy-vline
WA_ERCH_ERCHP_STR-ERCHP_BIS sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.