ABAP Select data from SAP table EVAT_TAX_ITEM_L 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 EVAT_TAX_ITEM_L 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 EVAT_TAX_ITEM_L. 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 EVAT_TAX_ITEM_L 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_EVAT_TAX_ITEM_L TYPE STANDARD TABLE OF EVAT_TAX_ITEM_L,
      WA_EVAT_TAX_ITEM_L TYPE EVAT_TAX_ITEM_L,
      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: <EVAT_TAX_ITEM_L> TYPE EVAT_TAX_ITEM_L.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM EVAT_TAX_ITEM_L
*  INTO TABLE @DATA(IT_EVAT_TAX_ITEM_L2).
*--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_EVAT_TAX_ITEM_L INDEX 1 INTO DATA(WA_EVAT_TAX_ITEM_L2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_EVAT_TAX_ITEM_L ASSIGNING <EVAT_TAX_ITEM_L>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<EVAT_TAX_ITEM_L>-EVAT_TAX_ITEM = 1.
<EVAT_TAX_ITEM_L>-UMKRS = 1.
<EVAT_TAX_ITEM_L>-UMSNR = 1.
<EVAT_TAX_ITEM_L>-UKADRNR = 1.
<EVAT_TAX_ITEM_L>-FAADR = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_EVAT_TAX_ITEM_L-FNAME1, sy-vline,
WA_EVAT_TAX_ITEM_L-FNAME2, sy-vline,
WA_EVAT_TAX_ITEM_L-FNAME3, sy-vline,
WA_EVAT_TAX_ITEM_L-FNAME4, sy-vline,
WA_EVAT_TAX_ITEM_L-FSTRAS, sy-vline,
WA_EVAT_TAX_ITEM_L-FPFACH, sy-vline.
ENDLOOP. *Add any further fields from structure WA_EVAT_TAX_ITEM_L 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_EVAT_TAX_ITEM_L 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_EVAT_TAX_ITEM_L INTO WA_EVAT_TAX_ITEM_L. *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 UKADRNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-UKADRNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-UKADRNR.
WRITE:/ 'New Value:', ld_input.

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

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

*Conversion exit AC152, internal->external for field BAS001 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS001 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS001.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC152, internal->external for field BAS002 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS002 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS002.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC152, internal->external for field BAS003 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS003 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS003.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC152, internal->external for field BAS004 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS004 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS004.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC152, internal->external for field BAS005 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS005 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS005.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

*Conversion exit AC152, internal->external for field USERFIELDNUM1 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-USERFIELDNUM1 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-USERFIELDNUM1.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC152, internal->external for field USERFIELDNUM2 CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-USERFIELDNUM2 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-USERFIELDNUM2.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit AC152, internal->external for field TNUMFLD CALL FUNCTION 'CONVERSION_EXIT_AC152_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-TNUMFLD IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-TNUMFLD.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS01 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS01 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS01.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS02 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS02 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS02.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS03 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS03 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS03.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS04 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS04 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS04.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS05 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS05 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS05.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS06 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS06 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS06.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS07 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS07 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS07.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS08 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS08 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS08.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS09 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS09 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS09.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS10 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS10 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS10.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS11 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS11 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS11.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS12 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS12 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS12.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS13 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS13 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS13.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS14 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS14 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS14.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS15 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS15 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS15.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS16 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS16 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS16.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS17 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS17 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS17.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS18 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS18 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS18.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS19 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS19 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS19.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS20 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS20 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS20.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS21 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS21 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS21.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS22 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS22 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS22.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS23 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS23 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS23.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS24 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS24 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS24.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS25 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS25 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS25.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AC192, internal->external for field BAS26 CALL FUNCTION 'CONVERSION_EXIT_AC192_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-BAS26 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-BAS26.
WRITE:/ 'New Value:', ld_input.

*Conversion exit SXIDN, internal->external for field EMAIL CALL FUNCTION 'CONVERSION_EXIT_SXIDN_OUTPUT' EXPORTING input = WA_EVAT_TAX_ITEM_L-EMAIL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_EVAT_TAX_ITEM_L-EMAIL.
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_EVAT_TAX_ITEM_L_STR,
EVAT_TAX_ITEM TYPE STRING,
UMKRS TYPE STRING,
UMSNR TYPE STRING,
UKADRNR TYPE STRING,
FAADR TYPE STRING,
FNAME1 TYPE STRING,
FNAME2 TYPE STRING,
FNAME3 TYPE STRING,
FNAME4 TYPE STRING,
FSTRAS TYPE STRING,
FPFACH TYPE STRING,
FSTRS2 TYPE STRING,
FHAUSN TYPE STRING,
FPSTLZ TYPE STRING,
FORT01 TYPE STRING,
FEMAIL TYPE STRING,
BUKRS TYPE STRING,
ADRNR TYPE STRING,
NAME1 TYPE STRING,
NAME2 TYPE STRING,
NAME3 TYPE STRING,
NAME4 TYPE STRING,
STRAS TYPE STRING,
PFACH TYPE STRING,
STRS2 TYPE STRING,
HAUSN TYPE STRING,
PSTLZ TYPE STRING,
ORT01 TYPE STRING,
TELF TYPE STRING,
STCEG TYPE STRING,
TXJCD TYPE STRING,
PERIV TYPE STRING,
CEMAIL TYPE STRING,
BAS001 TYPE STRING,
BAS002 TYPE STRING,
BAS003 TYPE STRING,
BAS004 TYPE STRING,
BAS005 TYPE STRING,
STE001 TYPE STRING,
STE002 TYPE STRING,
STE003 TYPE STRING,
STE004 TYPE STRING,
STE005 TYPE STRING,
USER_FIELD_1 TYPE STRING,
USER_FIELD_2 TYPE STRING,
USER_FIELD_3 TYPE STRING,
USER_FIELD_4 TYPE STRING,
USER_FIELD_5 TYPE STRING,
USER_FIELD_6 TYPE STRING,
USER_FIELD_7 TYPE STRING,
USER_FIELD_8 TYPE STRING,
USER_FIELD_9 TYPE STRING,
USER_FIELD_10 TYPE STRING,
USER_FIELD_A TYPE STRING,
USER_FIELD_B TYPE STRING,
USERFIELDNUM1 TYPE STRING,
USERFIELDNUM2 TYPE STRING,
BLDT1 TYPE STRING,
BLDT2 TYPE STRING,
LAND1 TYPE STRING,
WAERS TYPE STRING,
BUDT1 TYPE STRING,
BUDT2 TYPE STRING,
MONA1 TYPE STRING,
MONA2 TYPE STRING,
CHOICE TYPE STRING,
GJAHR TYPE STRING,
BOXNO TYPE STRING,
BOXID TYPE STRING,
TXTFLD TYPE STRING,
TTXTFLD TYPE STRING,
NUMFLD TYPE STRING,
TNUMFLD TYPE STRING,
FNUFLD TYPE STRING,
FNUFLD1 TYPE STRING,
FCHOICE TYPE STRING,
FTFLD TYPE STRING,
FTNUFLD TYPE STRING,
FTNUFLD1 TYPE STRING,
FTTFLD TYPE STRING,
LINNO TYPE STRING,
HWAER TYPE STRING,
UNIQ_FILE TYPE STRING,
SARS_REQST_REF TYPE STRING,
CONT_PER_SURNAME TYPE STRING,
TRADING_NAME TYPE STRING,
SUPPLIER_NAME TYPE STRING,
HASH_TOTAL TYPE STRING,
BAS01 TYPE STRING,
BAS02 TYPE STRING,
BAS03 TYPE STRING,
BAS04 TYPE STRING,
BAS05 TYPE STRING,
BAS06 TYPE STRING,
BAS07 TYPE STRING,
BAS08 TYPE STRING,
BAS09 TYPE STRING,
BAS10 TYPE STRING,
BAS11 TYPE STRING,
BAS12 TYPE STRING,
BAS13 TYPE STRING,
BAS14 TYPE STRING,
BAS15 TYPE STRING,
BAS16 TYPE STRING,
BAS17 TYPE STRING,
BAS18 TYPE STRING,
BAS19 TYPE STRING,
BAS20 TYPE STRING,
BAS21 TYPE STRING,
BAS22 TYPE STRING,
BAS23 TYPE STRING,
BAS24 TYPE STRING,
BAS25 TYPE STRING,
BAS26 TYPE STRING,
BAS27 TYPE STRING,
BAS28 TYPE STRING,
BAS29 TYPE STRING,
BAS30 TYPE STRING,
BAS31 TYPE STRING,
UNIQUE_NO TYPE STRING,
QTY_GOODS_SER TYPE STRING,
UOM TYPE STRING,
DOC_NO_DESC TYPE STRING,
UNIT_PRICE TYPE STRING,
VAT_CLASS TYPE STRING,
APP_RATIO TYPE STRING,
TEST_IND TYPE STRING,
CNCT_NO_2 TYPE STRING,
FILE_VER TYPE STRING,
CHNL_IDNT TYPE STRING,
SOURCE_IND TYPE STRING,
GROUP_ID TYPE STRING,
MRN1 TYPE STRING,
MRN2 TYPE STRING,
MRN3 TYPE STRING,
SYS_DATE TYPE STRING,
EMAIL TYPE STRING,
DOC_DATE TYPE STRING,
SYS_VER TYPE STRING,END OF T_EKKO_STR. DATA: WA_EVAT_TAX_ITEM_L_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_EVAT_TAX_ITEM_L_STR-EVAT_TAX_ITEM sy-vline
WA_EVAT_TAX_ITEM_L_STR-UMKRS sy-vline
WA_EVAT_TAX_ITEM_L_STR-UMSNR sy-vline
WA_EVAT_TAX_ITEM_L_STR-UKADRNR sy-vline
WA_EVAT_TAX_ITEM_L_STR-FAADR sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNAME1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNAME2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNAME3 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNAME4 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FSTRAS sy-vline
WA_EVAT_TAX_ITEM_L_STR-FPFACH sy-vline
WA_EVAT_TAX_ITEM_L_STR-FSTRS2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FHAUSN sy-vline
WA_EVAT_TAX_ITEM_L_STR-FPSTLZ sy-vline
WA_EVAT_TAX_ITEM_L_STR-FORT01 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FEMAIL sy-vline
WA_EVAT_TAX_ITEM_L_STR-BUKRS sy-vline
WA_EVAT_TAX_ITEM_L_STR-ADRNR sy-vline
WA_EVAT_TAX_ITEM_L_STR-NAME1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-NAME2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-NAME3 sy-vline
WA_EVAT_TAX_ITEM_L_STR-NAME4 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STRAS sy-vline
WA_EVAT_TAX_ITEM_L_STR-PFACH sy-vline
WA_EVAT_TAX_ITEM_L_STR-STRS2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-HAUSN sy-vline
WA_EVAT_TAX_ITEM_L_STR-PSTLZ sy-vline
WA_EVAT_TAX_ITEM_L_STR-ORT01 sy-vline
WA_EVAT_TAX_ITEM_L_STR-TELF sy-vline
WA_EVAT_TAX_ITEM_L_STR-STCEG sy-vline
WA_EVAT_TAX_ITEM_L_STR-TXJCD sy-vline
WA_EVAT_TAX_ITEM_L_STR-PERIV sy-vline
WA_EVAT_TAX_ITEM_L_STR-CEMAIL sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS001 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS002 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS003 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS004 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS005 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STE001 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STE002 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STE003 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STE004 sy-vline
WA_EVAT_TAX_ITEM_L_STR-STE005 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_3 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_4 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_5 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_6 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_7 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_8 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_9 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_10 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_A sy-vline
WA_EVAT_TAX_ITEM_L_STR-USER_FIELD_B sy-vline
WA_EVAT_TAX_ITEM_L_STR-USERFIELDNUM1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-USERFIELDNUM2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BLDT1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BLDT2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-LAND1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-WAERS sy-vline
WA_EVAT_TAX_ITEM_L_STR-BUDT1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BUDT2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-MONA1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-MONA2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-CHOICE sy-vline
WA_EVAT_TAX_ITEM_L_STR-GJAHR sy-vline
WA_EVAT_TAX_ITEM_L_STR-BOXNO sy-vline
WA_EVAT_TAX_ITEM_L_STR-BOXID sy-vline
WA_EVAT_TAX_ITEM_L_STR-TXTFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-TTXTFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-NUMFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-TNUMFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNUFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-FNUFLD1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FCHOICE sy-vline
WA_EVAT_TAX_ITEM_L_STR-FTFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-FTNUFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-FTNUFLD1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FTTFLD sy-vline
WA_EVAT_TAX_ITEM_L_STR-LINNO sy-vline
WA_EVAT_TAX_ITEM_L_STR-HWAER sy-vline
WA_EVAT_TAX_ITEM_L_STR-UNIQ_FILE sy-vline
WA_EVAT_TAX_ITEM_L_STR-SARS_REQST_REF sy-vline
WA_EVAT_TAX_ITEM_L_STR-CONT_PER_SURNAME sy-vline
WA_EVAT_TAX_ITEM_L_STR-TRADING_NAME sy-vline
WA_EVAT_TAX_ITEM_L_STR-SUPPLIER_NAME sy-vline
WA_EVAT_TAX_ITEM_L_STR-HASH_TOTAL sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS01 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS02 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS03 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS04 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS05 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS06 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS07 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS08 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS09 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS10 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS11 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS12 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS13 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS14 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS15 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS16 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS17 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS18 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS19 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS20 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS21 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS22 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS23 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS24 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS25 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS26 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS27 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS28 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS29 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS30 sy-vline
WA_EVAT_TAX_ITEM_L_STR-BAS31 sy-vline
WA_EVAT_TAX_ITEM_L_STR-UNIQUE_NO sy-vline
WA_EVAT_TAX_ITEM_L_STR-QTY_GOODS_SER sy-vline
WA_EVAT_TAX_ITEM_L_STR-UOM sy-vline
WA_EVAT_TAX_ITEM_L_STR-DOC_NO_DESC sy-vline
WA_EVAT_TAX_ITEM_L_STR-UNIT_PRICE sy-vline
WA_EVAT_TAX_ITEM_L_STR-VAT_CLASS sy-vline
WA_EVAT_TAX_ITEM_L_STR-APP_RATIO sy-vline
WA_EVAT_TAX_ITEM_L_STR-TEST_IND sy-vline
WA_EVAT_TAX_ITEM_L_STR-CNCT_NO_2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-FILE_VER sy-vline
WA_EVAT_TAX_ITEM_L_STR-CHNL_IDNT sy-vline
WA_EVAT_TAX_ITEM_L_STR-SOURCE_IND sy-vline
WA_EVAT_TAX_ITEM_L_STR-GROUP_ID sy-vline
WA_EVAT_TAX_ITEM_L_STR-MRN1 sy-vline
WA_EVAT_TAX_ITEM_L_STR-MRN2 sy-vline
WA_EVAT_TAX_ITEM_L_STR-MRN3 sy-vline
WA_EVAT_TAX_ITEM_L_STR-SYS_DATE sy-vline
WA_EVAT_TAX_ITEM_L_STR-EMAIL sy-vline
WA_EVAT_TAX_ITEM_L_STR-DOC_DATE sy-vline
WA_EVAT_TAX_ITEM_L_STR-SYS_VER sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.