ABAP Select data from SAP table CKEX2_F_RESV 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 CKEX2_F_RESV 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 CKEX2_F_RESV. 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 CKEX2_F_RESV 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_CKEX2_F_RESV TYPE STANDARD TABLE OF CKEX2_F_RESV,
      WA_CKEX2_F_RESV TYPE CKEX2_F_RESV,
      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: <CKEX2_F_RESV> TYPE CKEX2_F_RESV.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM CKEX2_F_RESV
*  INTO TABLE @DATA(IT_CKEX2_F_RESV2).
*--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_CKEX2_F_RESV INDEX 1 INTO DATA(WA_CKEX2_F_RESV2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_CKEX2_F_RESV ASSIGNING <CKEX2_F_RESV>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<CKEX2_F_RESV>-RSDAT = 1.
<CKEX2_F_RESV>-USNAM = 1.
<CKEX2_F_RESV>-KOKRS = 1.
<CKEX2_F_RESV>-MANDT = 1.
<CKEX2_F_RESV>-RSNUM = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_CKEX2_F_RESV-RSPOS, sy-vline,
WA_CKEX2_F_RESV-RSART, sy-vline,
WA_CKEX2_F_RESV-BDART, sy-vline,
WA_CKEX2_F_RESV-RSSTA, sy-vline,
WA_CKEX2_F_RESV-XLOEK, sy-vline,
WA_CKEX2_F_RESV-XWAOK, sy-vline.
ENDLOOP. *Add any further fields from structure WA_CKEX2_F_RESV 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_CKEX2_F_RESV 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_CKEX2_F_RESV INTO WA_CKEX2_F_RESV. *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_CKEX2_F_RESV-MATNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CKEX2_F_RESV-MATNR.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

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

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

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

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

*Conversion exit ISOLA, internal->external for field LTXSP CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT' EXPORTING input = WA_CKEX2_F_RESV-LTXSP IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CKEX2_F_RESV-LTXSP.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

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

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

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

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

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

*Conversion exit FMCIS, internal->external for field FIPOS CALL FUNCTION 'CONVERSION_EXIT_FMCIS_OUTPUT' EXPORTING input = WA_CKEX2_F_RESV-FIPOS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CKEX2_F_RESV-FIPOS.
WRITE:/ 'New Value:', ld_input.

*Conversion exit FMCIL, internal->external for field FIPEX CALL FUNCTION 'CONVERSION_EXIT_FMCIL_OUTPUT' EXPORTING input = WA_CKEX2_F_RESV-FIPEX IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CKEX2_F_RESV-FIPEX.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

*Conversion exit ALPHA, internal->external for field CRM_ITEM_ID CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_CKEX2_F_RESV-CRM_ITEM_ID IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CKEX2_F_RESV-CRM_ITEM_ID.
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_CKEX2_F_RESV_STR,
RSDAT TYPE STRING,
USNAM TYPE STRING,
KOKRS TYPE STRING,
MANDT TYPE STRING,
RSNUM TYPE STRING,
RSPOS TYPE STRING,
RSART TYPE STRING,
BDART TYPE STRING,
RSSTA TYPE STRING,
XLOEK TYPE STRING,
XWAOK TYPE STRING,
KZEAR TYPE STRING,
XFEHL TYPE STRING,
MATNR TYPE STRING,
WERKS TYPE STRING,
LGORT TYPE STRING,
PRVBE TYPE STRING,
CHARG TYPE STRING,
PLPLA TYPE STRING,
SOBKZ TYPE STRING,
BDTER TYPE STRING,
BDMNG TYPE STRING,
MEINS TYPE STRING,
SHKZG TYPE STRING,
FMENG TYPE STRING,
ENMNG TYPE STRING,
ENWRT TYPE STRING,
WAERS TYPE STRING,
ERFMG TYPE STRING,
ERFME TYPE STRING,
PLNUM TYPE STRING,
BANFN TYPE STRING,
BNFPO TYPE STRING,
AUFNR TYPE STRING,
BAUGR TYPE STRING,
SERNR TYPE STRING,
KDAUF TYPE STRING,
KDPOS TYPE STRING,
KDEIN TYPE STRING,
PROJN TYPE STRING,
BWART TYPE STRING,
SAKNR TYPE STRING,
GSBER TYPE STRING,
UMWRK TYPE STRING,
UMLGO TYPE STRING,
NAFKZ TYPE STRING,
NOMAT TYPE STRING,
NOMNG TYPE STRING,
POSTP TYPE STRING,
POSNR TYPE STRING,
ROMS1 TYPE STRING,
ROMS2 TYPE STRING,
ROMS3 TYPE STRING,
ROMEI TYPE STRING,
ROMEN TYPE STRING,
SGTXT TYPE STRING,
LMENG TYPE STRING,
ROHPS TYPE STRING,
RFORM TYPE STRING,
ROANZ TYPE STRING,
FLMNG TYPE STRING,
STLTY TYPE STRING,
STLNR TYPE STRING,
STLKN TYPE STRING,
STPOZ TYPE STRING,
LTXSP TYPE STRING,
POTX1 TYPE STRING,
POTX2 TYPE STRING,
SANKA TYPE STRING,
ALPOS TYPE STRING,
EWAHR TYPE STRING,
AUSCH TYPE STRING,
AVOAU TYPE STRING,
NETAU TYPE STRING,
NLFZT TYPE STRING,
AENNR TYPE STRING,
UMREZ TYPE STRING,
UMREN TYPE STRING,
SORTF TYPE STRING,
SBTER TYPE STRING,
VERTI TYPE STRING,
SCHGT TYPE STRING,
UPSKZ TYPE STRING,
DBSKZ TYPE STRING,
TXTPS TYPE STRING,
DUMPS TYPE STRING,
BEIKZ TYPE STRING,
ERSKZ TYPE STRING,
AUFST TYPE STRING,
AUFWG TYPE STRING,
BAUST TYPE STRING,
BAUWG TYPE STRING,
AUFPS TYPE STRING,
EBELN TYPE STRING,
EBELP TYPE STRING,
EBELE TYPE STRING,
KNTTP TYPE STRING,
KZVBR TYPE STRING,
PSPEL TYPE STRING,
AUFPL TYPE STRING,
PLNFL TYPE STRING,
VORNR TYPE STRING,
APLZL TYPE STRING,
OBJNR TYPE STRING,
FLGAT TYPE STRING,
GPREIS TYPE STRING,
FPREIS TYPE STRING,
PEINH TYPE STRING,
RGEKZ TYPE STRING,
EKGRP TYPE STRING,
ROKME TYPE STRING,
ZUMEI TYPE STRING,
ZUMS1 TYPE STRING,
ZUMS2 TYPE STRING,
ZUMS3 TYPE STRING,
ZUDIV TYPE STRING,
VMENG TYPE STRING,
PRREG TYPE STRING,
LIFZT TYPE STRING,
CUOBJ TYPE STRING,
KFPOS TYPE STRING,
REVLV TYPE STRING,
BERKZ TYPE STRING,
LGNUM TYPE STRING,
LGTYP TYPE STRING,
LGPLA TYPE STRING,
TBMNG TYPE STRING,
NPTXTKY TYPE STRING,
KBNKZ TYPE STRING,
KZKUP TYPE STRING,
AFPOS TYPE STRING,
NO_DISP TYPE STRING,
BDZTP TYPE STRING,
ESMNG TYPE STRING,
ALPGR TYPE STRING,
ALPRF TYPE STRING,
ALPST TYPE STRING,
KZAUS TYPE STRING,
NFEAG TYPE STRING,
NFPKZ TYPE STRING,
NFGRP TYPE STRING,
NFUML TYPE STRING,
ADRNR TYPE STRING,
CHOBJ TYPE STRING,
SPLKZ TYPE STRING,
SPLRV TYPE STRING,
KNUMH TYPE STRING,
WEMPF TYPE STRING,
ABLAD TYPE STRING,
HKMAT TYPE STRING,
HRKFT TYPE STRING,
VORAB TYPE STRING,
MATKL TYPE STRING,
FRUNV TYPE STRING,
CLAKZ TYPE STRING,
INPOS TYPE STRING,
WEBAZ TYPE STRING,
LIFNR TYPE STRING,
FLGEX TYPE STRING,
FUNCT TYPE STRING,
GPREIS_2 TYPE STRING,
FPREIS_2 TYPE STRING,
PEINH_2 TYPE STRING,
INFNR TYPE STRING,
KZECH TYPE STRING,
KZMPF TYPE STRING,
STLAL TYPE STRING,
PBDNR TYPE STRING,
STVKN TYPE STRING,
KTOMA TYPE STRING,
VRPLA TYPE STRING,
KZBWS TYPE STRING,
NLFZV TYPE STRING,
NLFMV TYPE STRING,
TECHS TYPE STRING,
OBJTYPE TYPE STRING,
CH_PROC TYPE STRING,
FXPRU TYPE STRING,
UMSOK TYPE STRING,
VORAB_SM TYPE STRING,
FIPOS TYPE STRING,
FIPEX TYPE STRING,
FISTL TYPE STRING,
GEBER TYPE STRING,
GRANT_NBR TYPE STRING,
FKBER TYPE STRING,
PRIO_URG TYPE STRING,
PRIO_REQ TYPE STRING,
KBLNR TYPE STRING,
KBLPOS TYPE STRING,
BUDGET_PD TYPE STRING,
SC_OBJECT_ID TYPE STRING,
SC_ITM_NO TYPE STRING,
SGT_SCAT TYPE STRING,
SGT_RCAT TYPE STRING,
FMFGUS_KEY TYPE STRING,
/CWM/ERFMG TYPE STRING,
/CWM/ERFME TYPE STRING,
_DATAAGING TYPE STRING,
BOM_VERSN TYPE STRING,
DUMMY_RDI_PS TYPE STRING,
UVORN TYPE STRING,
PRODUCTTYPE TYPE STRING,
SERVICEPERFORMER TYPE STRING,
STARTDATE TYPE STRING,
ENDDATE TYPE STRING,
PERFORMANCEPERIODSTARTTIME TYPE STRING,
PERFORMANCEPERIODENDTIME TYPE STRING,
SERVICEDURATION TYPE STRING,
SERVICEDURATIONUNIT TYPE STRING,
RECIPIENT_LOCATION_CODE TYPE STRING,
SERVICE_DOC_TYPE TYPE STRING,
SERVICE_DOC_ID TYPE STRING,
SERVICE_DOC_ITEM_ID TYPE STRING,
MAINTORDCOMPCMTDQTYISKEPT TYPE STRING,
ADVCODE TYPE STRING,
STRUC_CODE TYPE STRING,
STRUC_CLASS TYPE STRING,
STRUC_CLASSTYP TYPE STRING,
CRM_HEADER_ID TYPE STRING,
CRM_ITEM_ID TYPE STRING,
CRMS4_ITEM_ID TYPE STRING,
HEADER_BUS_TYPE TYPE STRING,
FLDLOGSSUPPLYPROCESS TYPE STRING,
FLDLOGSDELIVISHELDONSHORE TYPE STRING,
FSH_RALLOC_QTY TYPE STRING,
FSH_CRITICAL_COMP TYPE STRING,
FSH_CRITICAL_LEVEL TYPE STRING,
MILL_UCDET TYPE STRING,
WTY_IND TYPE STRING,
R_PART_INDICATOR TYPE STRING,
WTYSC_CLMITEM TYPE STRING,END OF T_EKKO_STR. DATA: WA_CKEX2_F_RESV_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_CKEX2_F_RESV_STR-RSDAT sy-vline
WA_CKEX2_F_RESV_STR-USNAM sy-vline
WA_CKEX2_F_RESV_STR-KOKRS sy-vline
WA_CKEX2_F_RESV_STR-MANDT sy-vline
WA_CKEX2_F_RESV_STR-RSNUM sy-vline
WA_CKEX2_F_RESV_STR-RSPOS sy-vline
WA_CKEX2_F_RESV_STR-RSART sy-vline
WA_CKEX2_F_RESV_STR-BDART sy-vline
WA_CKEX2_F_RESV_STR-RSSTA sy-vline
WA_CKEX2_F_RESV_STR-XLOEK sy-vline
WA_CKEX2_F_RESV_STR-XWAOK sy-vline
WA_CKEX2_F_RESV_STR-KZEAR sy-vline
WA_CKEX2_F_RESV_STR-XFEHL sy-vline
WA_CKEX2_F_RESV_STR-MATNR sy-vline
WA_CKEX2_F_RESV_STR-WERKS sy-vline
WA_CKEX2_F_RESV_STR-LGORT sy-vline
WA_CKEX2_F_RESV_STR-PRVBE sy-vline
WA_CKEX2_F_RESV_STR-CHARG sy-vline
WA_CKEX2_F_RESV_STR-PLPLA sy-vline
WA_CKEX2_F_RESV_STR-SOBKZ sy-vline
WA_CKEX2_F_RESV_STR-BDTER sy-vline
WA_CKEX2_F_RESV_STR-BDMNG sy-vline
WA_CKEX2_F_RESV_STR-MEINS sy-vline
WA_CKEX2_F_RESV_STR-SHKZG sy-vline
WA_CKEX2_F_RESV_STR-FMENG sy-vline
WA_CKEX2_F_RESV_STR-ENMNG sy-vline
WA_CKEX2_F_RESV_STR-ENWRT sy-vline
WA_CKEX2_F_RESV_STR-WAERS sy-vline
WA_CKEX2_F_RESV_STR-ERFMG sy-vline
WA_CKEX2_F_RESV_STR-ERFME sy-vline
WA_CKEX2_F_RESV_STR-PLNUM sy-vline
WA_CKEX2_F_RESV_STR-BANFN sy-vline
WA_CKEX2_F_RESV_STR-BNFPO sy-vline
WA_CKEX2_F_RESV_STR-AUFNR sy-vline
WA_CKEX2_F_RESV_STR-BAUGR sy-vline
WA_CKEX2_F_RESV_STR-SERNR sy-vline
WA_CKEX2_F_RESV_STR-KDAUF sy-vline
WA_CKEX2_F_RESV_STR-KDPOS sy-vline
WA_CKEX2_F_RESV_STR-KDEIN sy-vline
WA_CKEX2_F_RESV_STR-PROJN sy-vline
WA_CKEX2_F_RESV_STR-BWART sy-vline
WA_CKEX2_F_RESV_STR-SAKNR sy-vline
WA_CKEX2_F_RESV_STR-GSBER sy-vline
WA_CKEX2_F_RESV_STR-UMWRK sy-vline
WA_CKEX2_F_RESV_STR-UMLGO sy-vline
WA_CKEX2_F_RESV_STR-NAFKZ sy-vline
WA_CKEX2_F_RESV_STR-NOMAT sy-vline
WA_CKEX2_F_RESV_STR-NOMNG sy-vline
WA_CKEX2_F_RESV_STR-POSTP sy-vline
WA_CKEX2_F_RESV_STR-POSNR sy-vline
WA_CKEX2_F_RESV_STR-ROMS1 sy-vline
WA_CKEX2_F_RESV_STR-ROMS2 sy-vline
WA_CKEX2_F_RESV_STR-ROMS3 sy-vline
WA_CKEX2_F_RESV_STR-ROMEI sy-vline
WA_CKEX2_F_RESV_STR-ROMEN sy-vline
WA_CKEX2_F_RESV_STR-SGTXT sy-vline
WA_CKEX2_F_RESV_STR-LMENG sy-vline
WA_CKEX2_F_RESV_STR-ROHPS sy-vline
WA_CKEX2_F_RESV_STR-RFORM sy-vline
WA_CKEX2_F_RESV_STR-ROANZ sy-vline
WA_CKEX2_F_RESV_STR-FLMNG sy-vline
WA_CKEX2_F_RESV_STR-STLTY sy-vline
WA_CKEX2_F_RESV_STR-STLNR sy-vline
WA_CKEX2_F_RESV_STR-STLKN sy-vline
WA_CKEX2_F_RESV_STR-STPOZ sy-vline
WA_CKEX2_F_RESV_STR-LTXSP sy-vline
WA_CKEX2_F_RESV_STR-POTX1 sy-vline
WA_CKEX2_F_RESV_STR-POTX2 sy-vline
WA_CKEX2_F_RESV_STR-SANKA sy-vline
WA_CKEX2_F_RESV_STR-ALPOS sy-vline
WA_CKEX2_F_RESV_STR-EWAHR sy-vline
WA_CKEX2_F_RESV_STR-AUSCH sy-vline
WA_CKEX2_F_RESV_STR-AVOAU sy-vline
WA_CKEX2_F_RESV_STR-NETAU sy-vline
WA_CKEX2_F_RESV_STR-NLFZT sy-vline
WA_CKEX2_F_RESV_STR-AENNR sy-vline
WA_CKEX2_F_RESV_STR-UMREZ sy-vline
WA_CKEX2_F_RESV_STR-UMREN sy-vline
WA_CKEX2_F_RESV_STR-SORTF sy-vline
WA_CKEX2_F_RESV_STR-SBTER sy-vline
WA_CKEX2_F_RESV_STR-VERTI sy-vline
WA_CKEX2_F_RESV_STR-SCHGT sy-vline
WA_CKEX2_F_RESV_STR-UPSKZ sy-vline
WA_CKEX2_F_RESV_STR-DBSKZ sy-vline
WA_CKEX2_F_RESV_STR-TXTPS sy-vline
WA_CKEX2_F_RESV_STR-DUMPS sy-vline
WA_CKEX2_F_RESV_STR-BEIKZ sy-vline
WA_CKEX2_F_RESV_STR-ERSKZ sy-vline
WA_CKEX2_F_RESV_STR-AUFST sy-vline
WA_CKEX2_F_RESV_STR-AUFWG sy-vline
WA_CKEX2_F_RESV_STR-BAUST sy-vline
WA_CKEX2_F_RESV_STR-BAUWG sy-vline
WA_CKEX2_F_RESV_STR-AUFPS sy-vline
WA_CKEX2_F_RESV_STR-EBELN sy-vline
WA_CKEX2_F_RESV_STR-EBELP sy-vline
WA_CKEX2_F_RESV_STR-EBELE sy-vline
WA_CKEX2_F_RESV_STR-KNTTP sy-vline
WA_CKEX2_F_RESV_STR-KZVBR sy-vline
WA_CKEX2_F_RESV_STR-PSPEL sy-vline
WA_CKEX2_F_RESV_STR-AUFPL sy-vline
WA_CKEX2_F_RESV_STR-PLNFL sy-vline
WA_CKEX2_F_RESV_STR-VORNR sy-vline
WA_CKEX2_F_RESV_STR-APLZL sy-vline
WA_CKEX2_F_RESV_STR-OBJNR sy-vline
WA_CKEX2_F_RESV_STR-FLGAT sy-vline
WA_CKEX2_F_RESV_STR-GPREIS sy-vline
WA_CKEX2_F_RESV_STR-FPREIS sy-vline
WA_CKEX2_F_RESV_STR-PEINH sy-vline
WA_CKEX2_F_RESV_STR-RGEKZ sy-vline
WA_CKEX2_F_RESV_STR-EKGRP sy-vline
WA_CKEX2_F_RESV_STR-ROKME sy-vline
WA_CKEX2_F_RESV_STR-ZUMEI sy-vline
WA_CKEX2_F_RESV_STR-ZUMS1 sy-vline
WA_CKEX2_F_RESV_STR-ZUMS2 sy-vline
WA_CKEX2_F_RESV_STR-ZUMS3 sy-vline
WA_CKEX2_F_RESV_STR-ZUDIV sy-vline
WA_CKEX2_F_RESV_STR-VMENG sy-vline
WA_CKEX2_F_RESV_STR-PRREG sy-vline
WA_CKEX2_F_RESV_STR-LIFZT sy-vline
WA_CKEX2_F_RESV_STR-CUOBJ sy-vline
WA_CKEX2_F_RESV_STR-KFPOS sy-vline
WA_CKEX2_F_RESV_STR-REVLV sy-vline
WA_CKEX2_F_RESV_STR-BERKZ sy-vline
WA_CKEX2_F_RESV_STR-LGNUM sy-vline
WA_CKEX2_F_RESV_STR-LGTYP sy-vline
WA_CKEX2_F_RESV_STR-LGPLA sy-vline
WA_CKEX2_F_RESV_STR-TBMNG sy-vline
WA_CKEX2_F_RESV_STR-NPTXTKY sy-vline
WA_CKEX2_F_RESV_STR-KBNKZ sy-vline
WA_CKEX2_F_RESV_STR-KZKUP sy-vline
WA_CKEX2_F_RESV_STR-AFPOS sy-vline
WA_CKEX2_F_RESV_STR-NO_DISP sy-vline
WA_CKEX2_F_RESV_STR-BDZTP sy-vline
WA_CKEX2_F_RESV_STR-ESMNG sy-vline
WA_CKEX2_F_RESV_STR-ALPGR sy-vline
WA_CKEX2_F_RESV_STR-ALPRF sy-vline
WA_CKEX2_F_RESV_STR-ALPST sy-vline
WA_CKEX2_F_RESV_STR-KZAUS sy-vline
WA_CKEX2_F_RESV_STR-NFEAG sy-vline
WA_CKEX2_F_RESV_STR-NFPKZ sy-vline
WA_CKEX2_F_RESV_STR-NFGRP sy-vline
WA_CKEX2_F_RESV_STR-NFUML sy-vline
WA_CKEX2_F_RESV_STR-ADRNR sy-vline
WA_CKEX2_F_RESV_STR-CHOBJ sy-vline
WA_CKEX2_F_RESV_STR-SPLKZ sy-vline
WA_CKEX2_F_RESV_STR-SPLRV sy-vline
WA_CKEX2_F_RESV_STR-KNUMH sy-vline
WA_CKEX2_F_RESV_STR-WEMPF sy-vline
WA_CKEX2_F_RESV_STR-ABLAD sy-vline
WA_CKEX2_F_RESV_STR-HKMAT sy-vline
WA_CKEX2_F_RESV_STR-HRKFT sy-vline
WA_CKEX2_F_RESV_STR-VORAB sy-vline
WA_CKEX2_F_RESV_STR-MATKL sy-vline
WA_CKEX2_F_RESV_STR-FRUNV sy-vline
WA_CKEX2_F_RESV_STR-CLAKZ sy-vline
WA_CKEX2_F_RESV_STR-INPOS sy-vline
WA_CKEX2_F_RESV_STR-WEBAZ sy-vline
WA_CKEX2_F_RESV_STR-LIFNR sy-vline
WA_CKEX2_F_RESV_STR-FLGEX sy-vline
WA_CKEX2_F_RESV_STR-FUNCT sy-vline
WA_CKEX2_F_RESV_STR-GPREIS_2 sy-vline
WA_CKEX2_F_RESV_STR-FPREIS_2 sy-vline
WA_CKEX2_F_RESV_STR-PEINH_2 sy-vline
WA_CKEX2_F_RESV_STR-INFNR sy-vline
WA_CKEX2_F_RESV_STR-KZECH sy-vline
WA_CKEX2_F_RESV_STR-KZMPF sy-vline
WA_CKEX2_F_RESV_STR-STLAL sy-vline
WA_CKEX2_F_RESV_STR-PBDNR sy-vline
WA_CKEX2_F_RESV_STR-STVKN sy-vline
WA_CKEX2_F_RESV_STR-KTOMA sy-vline
WA_CKEX2_F_RESV_STR-VRPLA sy-vline
WA_CKEX2_F_RESV_STR-KZBWS sy-vline
WA_CKEX2_F_RESV_STR-NLFZV sy-vline
WA_CKEX2_F_RESV_STR-NLFMV sy-vline
WA_CKEX2_F_RESV_STR-TECHS sy-vline
WA_CKEX2_F_RESV_STR-OBJTYPE sy-vline
WA_CKEX2_F_RESV_STR-CH_PROC sy-vline
WA_CKEX2_F_RESV_STR-FXPRU sy-vline
WA_CKEX2_F_RESV_STR-UMSOK sy-vline
WA_CKEX2_F_RESV_STR-VORAB_SM sy-vline
WA_CKEX2_F_RESV_STR-FIPOS sy-vline
WA_CKEX2_F_RESV_STR-FIPEX sy-vline
WA_CKEX2_F_RESV_STR-FISTL sy-vline
WA_CKEX2_F_RESV_STR-GEBER sy-vline
WA_CKEX2_F_RESV_STR-GRANT_NBR sy-vline
WA_CKEX2_F_RESV_STR-FKBER sy-vline
WA_CKEX2_F_RESV_STR-PRIO_URG sy-vline
WA_CKEX2_F_RESV_STR-PRIO_REQ sy-vline
WA_CKEX2_F_RESV_STR-KBLNR sy-vline
WA_CKEX2_F_RESV_STR-KBLPOS sy-vline
WA_CKEX2_F_RESV_STR-BUDGET_PD sy-vline
WA_CKEX2_F_RESV_STR-SC_OBJECT_ID sy-vline
WA_CKEX2_F_RESV_STR-SC_ITM_NO sy-vline
WA_CKEX2_F_RESV_STR-SGT_SCAT sy-vline
WA_CKEX2_F_RESV_STR-SGT_RCAT sy-vline
WA_CKEX2_F_RESV_STR-FMFGUS_KEY sy-vline
WA_CKEX2_F_RESV_STR-/CWM/ERFMG sy-vline
WA_CKEX2_F_RESV_STR-/CWM/ERFME sy-vline
WA_CKEX2_F_RESV_STR-_DATAAGING sy-vline
WA_CKEX2_F_RESV_STR-BOM_VERSN sy-vline
WA_CKEX2_F_RESV_STR-DUMMY_RDI_PS sy-vline
WA_CKEX2_F_RESV_STR-UVORN sy-vline
WA_CKEX2_F_RESV_STR-PRODUCTTYPE sy-vline
WA_CKEX2_F_RESV_STR-SERVICEPERFORMER sy-vline
WA_CKEX2_F_RESV_STR-STARTDATE sy-vline
WA_CKEX2_F_RESV_STR-ENDDATE sy-vline
WA_CKEX2_F_RESV_STR-PERFORMANCEPERIODSTARTTIME sy-vline
WA_CKEX2_F_RESV_STR-PERFORMANCEPERIODENDTIME sy-vline
WA_CKEX2_F_RESV_STR-SERVICEDURATION sy-vline
WA_CKEX2_F_RESV_STR-SERVICEDURATIONUNIT sy-vline
WA_CKEX2_F_RESV_STR-RECIPIENT_LOCATION_CODE sy-vline
WA_CKEX2_F_RESV_STR-SERVICE_DOC_TYPE sy-vline
WA_CKEX2_F_RESV_STR-SERVICE_DOC_ID sy-vline
WA_CKEX2_F_RESV_STR-SERVICE_DOC_ITEM_ID sy-vline
WA_CKEX2_F_RESV_STR-MAINTORDCOMPCMTDQTYISKEPT sy-vline
WA_CKEX2_F_RESV_STR-ADVCODE sy-vline
WA_CKEX2_F_RESV_STR-STRUC_CODE sy-vline
WA_CKEX2_F_RESV_STR-STRUC_CLASS sy-vline
WA_CKEX2_F_RESV_STR-STRUC_CLASSTYP sy-vline
WA_CKEX2_F_RESV_STR-CRM_HEADER_ID sy-vline
WA_CKEX2_F_RESV_STR-CRM_ITEM_ID sy-vline
WA_CKEX2_F_RESV_STR-CRMS4_ITEM_ID sy-vline
WA_CKEX2_F_RESV_STR-HEADER_BUS_TYPE sy-vline
WA_CKEX2_F_RESV_STR-FLDLOGSSUPPLYPROCESS sy-vline
WA_CKEX2_F_RESV_STR-FLDLOGSDELIVISHELDONSHORE sy-vline
WA_CKEX2_F_RESV_STR-FSH_RALLOC_QTY sy-vline
WA_CKEX2_F_RESV_STR-FSH_CRITICAL_COMP sy-vline
WA_CKEX2_F_RESV_STR-FSH_CRITICAL_LEVEL sy-vline
WA_CKEX2_F_RESV_STR-MILL_UCDET sy-vline
WA_CKEX2_F_RESV_STR-WTY_IND sy-vline
WA_CKEX2_F_RESV_STR-R_PART_INDICATOR sy-vline
WA_CKEX2_F_RESV_STR-WTYSC_CLMITEM sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.