ABAP Select data from SAP table KEKO 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 KEKO 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 KEKO. 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 KEKO 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_KEKO TYPE STANDARD TABLE OF KEKO,
      WA_KEKO TYPE KEKO,
      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: <KEKO> TYPE KEKO.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM KEKO
*  INTO TABLE @DATA(IT_KEKO2).
*--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_KEKO INDEX 1 INTO DATA(WA_KEKO2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_KEKO ASSIGNING <KEKO>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<KEKO>-MANDT = 1.
<KEKO>-BZOBJ = 1.
<KEKO>-KALNR = 1.
<KEKO>-KALKA = 1.
<KEKO>-KADKY = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_KEKO-TVERS, sy-vline,
WA_KEKO-BWVAR, sy-vline,
WA_KEKO-KKZMA, sy-vline,
WA_KEKO-MATNR, sy-vline,
WA_KEKO-WERKS, sy-vline,
WA_KEKO-BWKEY, sy-vline.
ENDLOOP. *Add any further fields from structure WA_KEKO 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_KEKO 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_KEKO INTO WA_KEKO. *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 MATN1, internal->external for field MATNR CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_KEKO-MATNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-MATNR.
WRITE:/ 'New Value:', ld_input.

*Conversion exit NUMCV, internal->external for field STNUM CALL FUNCTION 'CONVERSION_EXIT_NUMCV_OUTPUT' EXPORTING input = WA_KEKO-STNUM IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-STNUM.
WRITE:/ 'New Value:', ld_input.

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

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

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

*Conversion exit CUNIT, internal->external for field MEINS CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_KEKO-MEINS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-MEINS.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit GJAHR, internal->external for field BDATJ CALL FUNCTION 'CONVERSION_EXIT_GJAHR_OUTPUT' EXPORTING input = WA_KEKO-BDATJ IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-BDATJ.
WRITE:/ 'New Value:', ld_input.

*Conversion exit MATN1, internal->external for field TYPE CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_KEKO-TYPE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-TYPE.
WRITE:/ 'New Value:', ld_input.

*Conversion exit MATN1, internal->external for field PROZESS CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_KEKO-PROZESS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-PROZESS.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit ABPSP, internal->external for field PSPNR CALL FUNCTION 'CONVERSION_EXIT_ABPSP_OUTPUT' EXPORTING input = WA_KEKO-PSPNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-PSPNR.
WRITE:/ 'New Value:', ld_input.

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

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

*Conversion exit CUNIT, internal->external for field MEINH_WS CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_KEKO-MEINH_WS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-MEINH_WS.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit CUNIT, internal->external for field /CWM/MEINH_BAS CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_KEKO-/CWM/MEINH_BAS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-/CWM/MEINH_BAS.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field /CWM/MEINH_BEW CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_KEKO-/CWM/MEINH_BEW IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-/CWM/MEINH_BEW.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field AENNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_KEKO-AENNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_KEKO-AENNR.
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_KEKO_STR,
MANDT TYPE STRING,
BZOBJ TYPE STRING,
KALNR TYPE STRING,
KALKA TYPE STRING,
KADKY TYPE STRING,
TVERS TYPE STRING,
BWVAR TYPE STRING,
KKZMA TYPE STRING,
MATNR TYPE STRING,
WERKS TYPE STRING,
BWKEY TYPE STRING,
BWTAR TYPE STRING,
KOKRS TYPE STRING,
KADAT TYPE STRING,
BIDAT TYPE STRING,
KADAM TYPE STRING,
BIDAM TYPE STRING,
BWDAT TYPE STRING,
ALDAT TYPE STRING,
BEDAT TYPE STRING,
VERID TYPE STRING,
STNUM TYPE STRING,
STLAN TYPE STRING,
STALT TYPE STRING,
STCNT TYPE STRING,
PLNNR TYPE STRING,
PLNTY TYPE STRING,
PLNAL TYPE STRING,
PLNCT TYPE STRING,
LOEKZ TYPE STRING,
LOSGR TYPE STRING,
MEINS TYPE STRING,
ERFNM TYPE STRING,
ERFMA TYPE STRING,
CPUDT TYPE STRING,
CPUDM TYPE STRING,
CPUTIME TYPE STRING,
FEH_ANZ TYPE STRING,
FEH_K_ANZ TYPE STRING,
FEH_STA TYPE STRING,
MAXMSG TYPE STRING,
FREIG TYPE STRING,
MKALK TYPE STRING,
BALTKZ TYPE STRING,
KALNR_BA TYPE STRING,
BTYP TYPE STRING,
MISCH_VERH TYPE STRING,
BWVAR_BA TYPE STRING,
PLSCN TYPE STRING,
PLMNG TYPE STRING,
SOBSL TYPE STRING,
SOBES TYPE STRING,
SOWRK TYPE STRING,
SOBWT TYPE STRING,
SODIR TYPE STRING,
SODUM TYPE STRING,
KALSM TYPE STRING,
AUFZA TYPE STRING,
BWSMR TYPE STRING,
SUBSTRAT TYPE STRING,
RLDNR TYPE STRING,
KLVAR TYPE STRING,
KOSGR TYPE STRING,
ZSCHL TYPE STRING,
POPER TYPE STRING,
BDATJ TYPE STRING,
STKOZ TYPE STRING,
ZAEHL TYPE STRING,
TOPKA TYPE STRING,
CMF_NR TYPE STRING,
OCS_COUNT TYPE STRING,
OBJNR TYPE STRING,
ERZKA TYPE STRING,
LOSAU TYPE STRING,
AUSID TYPE STRING,
AUSSS TYPE STRING,
SAPRL TYPE STRING,
KZROH TYPE STRING,
AUFPL TYPE STRING,
CUOBJ TYPE STRING,
CUOBJID TYPE STRING,
TECHS TYPE STRING,
TYPE TYPE STRING,
WRKLT TYPE STRING,
VORMDAT TYPE STRING,
VORMUSR TYPE STRING,
FREIDAT TYPE STRING,
FREIUSR TYPE STRING,
UEBID TYPE STRING,
PROZESS TYPE STRING,
PR_VERID TYPE STRING,
CSPLIT TYPE STRING,
KZKUP TYPE STRING,
FXPRU TYPE STRING,
CFXPR TYPE STRING,
ZIFFR TYPE STRING,
SUMZIFFR TYPE STRING,
AFAKT TYPE STRING,
VBELN TYPE STRING,
POSNR TYPE STRING,
PSPNR TYPE STRING,
SBDKZ TYPE STRING,
MLMAA TYPE STRING,
BESKZ TYPE STRING,
DISST TYPE STRING,
KALST TYPE STRING,
TEMPLATE TYPE STRING,
PATNR TYPE STRING,
PART_VRSN TYPE STRING,
ELEHK TYPE STRING,
ELEHKNS TYPE STRING,
VOCNT TYPE STRING,
GSBER TYPE STRING,
PRCTR TYPE STRING,
SEGUNIT TYPE STRING,
TPVAR TYPE STRING,
KURST TYPE STRING,
MGTYP TYPE STRING,
HWAER TYPE STRING,
FWAER_KPF TYPE STRING,
REFID TYPE STRING,
MEINH_WS TYPE STRING,
KZWSO TYPE STRING,
ASL TYPE STRING,
KALAID TYPE STRING,
KALADAT TYPE STRING,
OTYP TYPE STRING,
BVC_SOBSL_USE TYPE STRING,
BAPI_CREATED TYPE STRING,
SGT_SCAT TYPE STRING,
LOGSYSTEM_SENDER TYPE STRING,
BZOBJ_SENDER TYPE STRING,
KALNR_SENDER TYPE STRING,
KALKA_SENDER TYPE STRING,
KADKY_SENDER TYPE STRING,
TVERS_SENDER TYPE STRING,
BWVAR_SENDER TYPE STRING,
KKZMA_SENDER TYPE STRING,
/CWM/XCWMAT TYPE STRING,
/CWM/LOSGR_BAS TYPE STRING,
/CWM/MEINH_BAS TYPE STRING,
/CWM/LOSGR_BEW TYPE STRING,
/CWM/MEINH_BEW TYPE STRING,
CRULE TYPE STRING,
PACKNO TYPE STRING,
INTROW TYPE STRING,
BOSFSHT TYPE STRING,
BOSDVERSION TYPE STRING,
GRC_COSTING TYPE STRING,
CLINT TYPE STRING,
PPEGUID TYPE STRING,
OTYPE TYPE STRING,
APPLOBJ_TYPE TYPE STRING,
AENNR TYPE STRING,
IPPE_COSTING TYPE STRING,
CMPEXT_NONCOL TYPE STRING,
CCODE TYPE STRING,
NONCOL_VERID TYPE STRING,END OF T_EKKO_STR. DATA: WA_KEKO_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_KEKO_STR-MANDT sy-vline
WA_KEKO_STR-BZOBJ sy-vline
WA_KEKO_STR-KALNR sy-vline
WA_KEKO_STR-KALKA sy-vline
WA_KEKO_STR-KADKY sy-vline
WA_KEKO_STR-TVERS sy-vline
WA_KEKO_STR-BWVAR sy-vline
WA_KEKO_STR-KKZMA sy-vline
WA_KEKO_STR-MATNR sy-vline
WA_KEKO_STR-WERKS sy-vline
WA_KEKO_STR-BWKEY sy-vline
WA_KEKO_STR-BWTAR sy-vline
WA_KEKO_STR-KOKRS sy-vline
WA_KEKO_STR-KADAT sy-vline
WA_KEKO_STR-BIDAT sy-vline
WA_KEKO_STR-KADAM sy-vline
WA_KEKO_STR-BIDAM sy-vline
WA_KEKO_STR-BWDAT sy-vline
WA_KEKO_STR-ALDAT sy-vline
WA_KEKO_STR-BEDAT sy-vline
WA_KEKO_STR-VERID sy-vline
WA_KEKO_STR-STNUM sy-vline
WA_KEKO_STR-STLAN sy-vline
WA_KEKO_STR-STALT sy-vline
WA_KEKO_STR-STCNT sy-vline
WA_KEKO_STR-PLNNR sy-vline
WA_KEKO_STR-PLNTY sy-vline
WA_KEKO_STR-PLNAL sy-vline
WA_KEKO_STR-PLNCT sy-vline
WA_KEKO_STR-LOEKZ sy-vline
WA_KEKO_STR-LOSGR sy-vline
WA_KEKO_STR-MEINS sy-vline
WA_KEKO_STR-ERFNM sy-vline
WA_KEKO_STR-ERFMA sy-vline
WA_KEKO_STR-CPUDT sy-vline
WA_KEKO_STR-CPUDM sy-vline
WA_KEKO_STR-CPUTIME sy-vline
WA_KEKO_STR-FEH_ANZ sy-vline
WA_KEKO_STR-FEH_K_ANZ sy-vline
WA_KEKO_STR-FEH_STA sy-vline
WA_KEKO_STR-MAXMSG sy-vline
WA_KEKO_STR-FREIG sy-vline
WA_KEKO_STR-MKALK sy-vline
WA_KEKO_STR-BALTKZ sy-vline
WA_KEKO_STR-KALNR_BA sy-vline
WA_KEKO_STR-BTYP sy-vline
WA_KEKO_STR-MISCH_VERH sy-vline
WA_KEKO_STR-BWVAR_BA sy-vline
WA_KEKO_STR-PLSCN sy-vline
WA_KEKO_STR-PLMNG sy-vline
WA_KEKO_STR-SOBSL sy-vline
WA_KEKO_STR-SOBES sy-vline
WA_KEKO_STR-SOWRK sy-vline
WA_KEKO_STR-SOBWT sy-vline
WA_KEKO_STR-SODIR sy-vline
WA_KEKO_STR-SODUM sy-vline
WA_KEKO_STR-KALSM sy-vline
WA_KEKO_STR-AUFZA sy-vline
WA_KEKO_STR-BWSMR sy-vline
WA_KEKO_STR-SUBSTRAT sy-vline
WA_KEKO_STR-RLDNR sy-vline
WA_KEKO_STR-KLVAR sy-vline
WA_KEKO_STR-KOSGR sy-vline
WA_KEKO_STR-ZSCHL sy-vline
WA_KEKO_STR-POPER sy-vline
WA_KEKO_STR-BDATJ sy-vline
WA_KEKO_STR-STKOZ sy-vline
WA_KEKO_STR-ZAEHL sy-vline
WA_KEKO_STR-TOPKA sy-vline
WA_KEKO_STR-CMF_NR sy-vline
WA_KEKO_STR-OCS_COUNT sy-vline
WA_KEKO_STR-OBJNR sy-vline
WA_KEKO_STR-ERZKA sy-vline
WA_KEKO_STR-LOSAU sy-vline
WA_KEKO_STR-AUSID sy-vline
WA_KEKO_STR-AUSSS sy-vline
WA_KEKO_STR-SAPRL sy-vline
WA_KEKO_STR-KZROH sy-vline
WA_KEKO_STR-AUFPL sy-vline
WA_KEKO_STR-CUOBJ sy-vline
WA_KEKO_STR-CUOBJID sy-vline
WA_KEKO_STR-TECHS sy-vline
WA_KEKO_STR-TYPE sy-vline
WA_KEKO_STR-WRKLT sy-vline
WA_KEKO_STR-VORMDAT sy-vline
WA_KEKO_STR-VORMUSR sy-vline
WA_KEKO_STR-FREIDAT sy-vline
WA_KEKO_STR-FREIUSR sy-vline
WA_KEKO_STR-UEBID sy-vline
WA_KEKO_STR-PROZESS sy-vline
WA_KEKO_STR-PR_VERID sy-vline
WA_KEKO_STR-CSPLIT sy-vline
WA_KEKO_STR-KZKUP sy-vline
WA_KEKO_STR-FXPRU sy-vline
WA_KEKO_STR-CFXPR sy-vline
WA_KEKO_STR-ZIFFR sy-vline
WA_KEKO_STR-SUMZIFFR sy-vline
WA_KEKO_STR-AFAKT sy-vline
WA_KEKO_STR-VBELN sy-vline
WA_KEKO_STR-POSNR sy-vline
WA_KEKO_STR-PSPNR sy-vline
WA_KEKO_STR-SBDKZ sy-vline
WA_KEKO_STR-MLMAA sy-vline
WA_KEKO_STR-BESKZ sy-vline
WA_KEKO_STR-DISST sy-vline
WA_KEKO_STR-KALST sy-vline
WA_KEKO_STR-TEMPLATE sy-vline
WA_KEKO_STR-PATNR sy-vline
WA_KEKO_STR-PART_VRSN sy-vline
WA_KEKO_STR-ELEHK sy-vline
WA_KEKO_STR-ELEHKNS sy-vline
WA_KEKO_STR-VOCNT sy-vline
WA_KEKO_STR-GSBER sy-vline
WA_KEKO_STR-PRCTR sy-vline
WA_KEKO_STR-SEGUNIT sy-vline
WA_KEKO_STR-TPVAR sy-vline
WA_KEKO_STR-KURST sy-vline
WA_KEKO_STR-MGTYP sy-vline
WA_KEKO_STR-HWAER sy-vline
WA_KEKO_STR-FWAER_KPF sy-vline
WA_KEKO_STR-REFID sy-vline
WA_KEKO_STR-MEINH_WS sy-vline
WA_KEKO_STR-KZWSO sy-vline
WA_KEKO_STR-ASL sy-vline
WA_KEKO_STR-KALAID sy-vline
WA_KEKO_STR-KALADAT sy-vline
WA_KEKO_STR-OTYP sy-vline
WA_KEKO_STR-BVC_SOBSL_USE sy-vline
WA_KEKO_STR-BAPI_CREATED sy-vline
WA_KEKO_STR-SGT_SCAT sy-vline
WA_KEKO_STR-LOGSYSTEM_SENDER sy-vline
WA_KEKO_STR-BZOBJ_SENDER sy-vline
WA_KEKO_STR-KALNR_SENDER sy-vline
WA_KEKO_STR-KALKA_SENDER sy-vline
WA_KEKO_STR-KADKY_SENDER sy-vline
WA_KEKO_STR-TVERS_SENDER sy-vline
WA_KEKO_STR-BWVAR_SENDER sy-vline
WA_KEKO_STR-KKZMA_SENDER sy-vline
WA_KEKO_STR-/CWM/XCWMAT sy-vline
WA_KEKO_STR-/CWM/LOSGR_BAS sy-vline
WA_KEKO_STR-/CWM/MEINH_BAS sy-vline
WA_KEKO_STR-/CWM/LOSGR_BEW sy-vline
WA_KEKO_STR-/CWM/MEINH_BEW sy-vline
WA_KEKO_STR-CRULE sy-vline
WA_KEKO_STR-PACKNO sy-vline
WA_KEKO_STR-INTROW sy-vline
WA_KEKO_STR-BOSFSHT sy-vline
WA_KEKO_STR-BOSDVERSION sy-vline
WA_KEKO_STR-GRC_COSTING sy-vline
WA_KEKO_STR-CLINT sy-vline
WA_KEKO_STR-PPEGUID sy-vline
WA_KEKO_STR-OTYPE sy-vline
WA_KEKO_STR-APPLOBJ_TYPE sy-vline
WA_KEKO_STR-AENNR sy-vline
WA_KEKO_STR-IPPE_COSTING sy-vline
WA_KEKO_STR-CMPEXT_NONCOL sy-vline
WA_KEKO_STR-CCODE sy-vline
WA_KEKO_STR-NONCOL_VERID sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.