ABAP Select data from SAP table /PM0/AOAL_CL_DS_ACCOUNT_ITEM 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 /PM0/AOAL_CL_DS_ACCOUNT_ITEM 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 /PM0/AOAL_CL_DS_ACCOUNT_ITEM. 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 /PM0/AOAL_CL_DS_ACCOUNT_ITEM 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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM TYPE STANDARD TABLE OF /PM0/AOAL_CL_DS_ACCOUNT_ITEM,
      WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM TYPE /PM0/AOAL_CL_DS_ACCOUNT_ITEM,
      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: </PM0/AOAL_CL_DS_ACCOUNT_ITEM> TYPE /PM0/AOAL_CL_DS_ACCOUNT_ITEM.

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

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM /PM0/AOAL_CL_DS_ACCOUNT_ITEM
  INTO TABLE IT_/PM0/AOAL_CL_DS_ACCOUNT_ITEM.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM /PM0/AOAL_CL_DS_ACCOUNT_ITEM
*  INTO TABLE @DATA(IT_/PM0/AOAL_CL_DS_ACCOUNT_ITEM2).
*--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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM INDEX 1 INTO DATA(WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_/PM0/AOAL_CL_DS_ACCOUNT_ITEM ASSIGNING </PM0/AOAL_CL_DS_ACCOUNT_ITEM>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
</PM0/AOAL_CL_DS_ACCOUNT_ITEM>-SIMULATED_CLEARING = 1.
</PM0/AOAL_CL_DS_ACCOUNT_ITEM>-ZERO_CLEARING = 1.
</PM0/AOAL_CL_DS_ACCOUNT_ITEM>-SIMULATED_OI = 1.
</PM0/AOAL_CL_DS_ACCOUNT_ITEM>-NOT_DISPLAY = 1.
</PM0/AOAL_CL_DS_ACCOUNT_ITEM>-DOC_NO = 1.
ENDLOOP.

LOOP AT IT_/PM0/AOAL_CL_DS_ACCOUNT_ITEM INTO WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-REP_ITEM, sy-vline,
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-ITEM, sy-vline,
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-SUB_ITEM, sy-vline,
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-COMP_CODE, sy-vline,
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-BUS_AREA, sy-vline,
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-STATUS, sy-vline.
ENDLOOP. *Add any further fields from structure WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM 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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM 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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM INTO WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM. *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 DOC_NO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-DOC_NO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-DOC_NO.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

*Conversion exit EXCRT, internal->external for field TRAN_RATE CALL FUNCTION 'CONVERSION_EXIT_EXCRT_OUTPUT' EXPORTING input = WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-TRAN_RATE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-TRAN_RATE.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

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

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

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

*Conversion exit FMCIL, internal->external for field CMMT_ITEM CALL FUNCTION 'CONVERSION_EXIT_FMCIL_OUTPUT' EXPORTING input = WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-CMMT_ITEM IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM-CMMT_ITEM.
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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR,
SIMULATED_CLEARING TYPE STRING,
ZERO_CLEARING TYPE STRING,
SIMULATED_OI TYPE STRING,
NOT_DISPLAY TYPE STRING,
DOC_NO TYPE STRING,
REP_ITEM TYPE STRING,
ITEM TYPE STRING,
SUB_ITEM TYPE STRING,
COMP_CODE TYPE STRING,
BUS_AREA TYPE STRING,
STATUS TYPE STRING,
BUSPARTNER TYPE STRING,
CONTRACT TYPE STRING,
CONTRACT2 TYPE STRING,
CONT_ACCT TYPE STRING,
SUB_DOC TYPE STRING,
DOC_CAT TYPE STRING,
APPL_AREA TYPE STRING,
MAIN_TRANS TYPE STRING,
SUB_TRANS TYPE STRING,
ACTDETERID TYPE STRING,
DIVISION TYPE STRING,
G_L_ACCT TYPE STRING,
TAX_CODE TYPE STRING,
DOWN_PMNT TYPE STRING,
STAT_KEY TYPE STRING,
DOC_DATE TYPE STRING,
POST_DATE TYPE STRING,
TEXT TYPE STRING,
NET_DATE TYPE STRING,
DISC_DUE TYPE STRING,
ONLY_OFF TYPE STRING,
DEFERRAL TYPE STRING,
DISC_RATE TYPE STRING,
NO_DUNNING TYPE STRING,
TRAN_RATE TYPE STRING,
CURRENCY TYPE STRING,
CURRENCY_ISO TYPE STRING,
AMOUNT_LOC_CURR TYPE STRING,
AMOUNT TYPE STRING,
AMOUNT_PAR2_CURR TYPE STRING,
AMOUNT_PAR3_CURR TYPE STRING,
DISCOUNT_BASE TYPE STRING,
TAX_AMOUNT_LOC_CURR TYPE STRING,
TAX_AMOUNT TYPE STRING,
TAX_AMOUNT_PAR2_CURR TYPE STRING,
TAX_AMOUNT_PAR3_CURR TYPE STRING,
TAX_ACCT TYPE STRING,
OFFSET_TAX TYPE STRING,
PMNT_BLOCK TYPE STRING,
PMNT_METH TYPE STRING,
PERSON_NO TYPE STRING,
GROUPING TYPE STRING,
PERIOD_KEY TYPE STRING,
CHG_BLOCK TYPE STRING,
CLEARDATE TYPE STRING,
CLEARDOCNO TYPE STRING,
CL_POSTDTE TYPE STRING,
CLEAR_REAS TYPE STRING,
CLRG_CURR TYPE STRING,
CLRG_CURR_ISO TYPE STRING,
AMOUNT_CLEAR TYPE STRING,
TAX_AMOUNT_CLEAR TYPE STRING,
VAL_DATE TYPE STRING,
CANCELED TYPE STRING,
NO_REPS TYPE STRING,
REPET_GRP TYPE STRING,
LINE_ITEM TYPE STRING,
DUNN_PROC TYPE STRING,
DUNN_BLOCK TYPE STRING,
CHECK_CLNG TYPE STRING,
CALC_PERLO TYPE STRING,
CALC_PERHI TYPE STRING,
PLAN_GRP TYPE STRING,
PLAN_LEVEL TYPE STRING,
CM_EX_DAYS TYPE STRING,
AMOUNT_PLANNED TYPE STRING,
PART_CLRG TYPE STRING,
RESTRICT TYPE STRING,
PAYMNT_GRP TYPE STRING,
INT_BLOCK TYPE STRING,
INT_INFO TYPE STRING,
TAXJURCODE TYPE STRING,
TAX_DATE TYPE STRING,
TRADE_ID TYPE STRING,
ACCTASSCAT TYPE STRING,
ACCT_ASSGT TYPE STRING,
DUN_INDIC TYPE STRING,
DOC_TYPE TYPE STRING,
PARTNER TYPE STRING,
BK_DETAILS TYPE STRING,
ADDR_NO TYPE STRING,
INT_KEY TYPE STRING,
EURO_STAT TYPE STRING,
REVERSECLG TYPE STRING,
XREPETPOS TYPE STRING,
STAT_KEY_SRC TYPE STRING,
REF_DOC_NO TYPE STRING,
COLLECTION_POS TYPE STRING,
DUNN_RUN_DATE TYPE STRING,
DUNN_IDENTIFICATION TYPE STRING,
DUNN_ISSUE_DATE TYPE STRING,
DUNN_PRINT_DATE TYPE STRING,
DUNN_GROUP TYPE STRING,
DUNN_LEVEL TYPE STRING,
DUNN_LEVEL_TYPE TYPE STRING,
DUNN_LEVEL_NEW TYPE STRING,
DUNN_LEVEL_OPTIONAL TYPE STRING,
DUNN_NOTICE_CANCELED TYPE STRING,
RETURN_REASON TYPE STRING,
RETURN_VALUE_DATE TYPE STRING,
NUMBER_OF_RETURNS TYPE STRING,
RETURN_PAYMENT_DOC TYPE STRING,
RETURN_DOCUMENT TYPE STRING,
RETURN_REASON_TEXT TYPE STRING,
AMOUNT_OPEN_LOC TYPE STRING,
AMOUNT_OPEN TYPE STRING,
AMOUNT_TOTAL_LOC TYPE STRING,
AMOUNT_TOTAL TYPE STRING,
AMOUNT_CLEARED_LOC TYPE STRING,
AMOUNT_CLEARED TYPE STRING,
AMOUNT_DUE_LOC TYPE STRING,
AMOUNT_DUE TYPE STRING,
AMOUNT_DEBIT_LOC TYPE STRING,
AMOUNT_CREDIT_LOC TYPE STRING,
AMOUNT_DEBIT TYPE STRING,
AMOUNT_CREDIT TYPE STRING,
AMOUNT_RUN_TOTAL_LOC TYPE STRING,
AMOUNT_RUN_TOTAL TYPE STRING,
DUNN_AMOUNT TYPE STRING,
DUNN_AMOUNT_LOC TYPE STRING,
EURO_AMOUNT_LOC_CURR TYPE STRING,
EURO_AMOUNT TYPE STRING,
EURO_AMOUNT_OPEN_LOC TYPE STRING,
EURO_AMOUNT_OPEN TYPE STRING,
EURO_AMOUNT_TOTAL_LOC TYPE STRING,
EURO_AMOUNT_TOTAL TYPE STRING,
EURO_AMOUNT_CLEARED_LOC TYPE STRING,
EURO_AMOUNT_CLEARED TYPE STRING,
EURO_AMOUNT_DUE_LOC TYPE STRING,
EURO_AMOUNT_DUE TYPE STRING,
EURO_AMOUNT_DEBIT_LOC TYPE STRING,
EURO_AMOUNT_CREDIT_LOC TYPE STRING,
EURO_AMOUNT_DEBIT TYPE STRING,
EURO_AMOUNT_CREDIT TYPE STRING,
DOC_TYPE_DESCRIPTION TYPE STRING,
PAYMENT_AMOUNT TYPE STRING,
PAYMENT_CURRENCY TYPE STRING,
PAYMENT_CURRENCY_ISO TYPE STRING,
LOC_CURRCY TYPE STRING,
LOC_CURRCY_ISO TYPE STRING,
PAR2_CURRENCY TYPE STRING,
PAR2_CURRENCY_ISO TYPE STRING,
PAR3_CURRENCY TYPE STRING,
PAR3_CURRENCY_ISO TYPE STRING,
DOCNO_CLEARED_ITEM TYPE STRING,
DISC_RATE_CHAR TYPE STRING,
TRAN_RATE_CHAR TYPE STRING,
AMOUNT_DEDUCTION_LOC TYPE STRING,
AMOUNT_DEDUCTION TYPE STRING,
DUE_ITEM TYPE STRING,
DOWN_PAYMENT_ITEM TYPE STRING,
ROW TYPE STRING,
FM_CATEGORY TYPE STRING,
FM_ORIG_AREA TYPE STRING,
CMMT_ITEM TYPE STRING,
FUNDS_CTR TYPE STRING,
FUND TYPE STRING,
FUNC_AREA TYPE STRING,
W_TAX_CODE TYPE STRING,
W_TAX_SUPPL TYPE STRING,
W_TAX_LICAT TYPE STRING,
W_TAX_BASE TYPE STRING,
W_TAX_AMOUNT TYPE STRING,
EXEMPT_NO TYPE STRING,
CHANGE_INFO TYPE STRING,END OF T_EKKO_STR. DATA: WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_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_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-SIMULATED_CLEARING sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ZERO_CLEARING sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-SIMULATED_OI sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-NOT_DISPLAY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOC_NO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-REP_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-SUB_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-COMP_CODE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-BUS_AREA sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-STATUS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-BUSPARTNER sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CONTRACT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CONTRACT2 sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CONT_ACCT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-SUB_DOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOC_CAT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-APPL_AREA sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-MAIN_TRANS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-SUB_TRANS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ACTDETERID sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DIVISION sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-G_L_ACCT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_CODE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOWN_PMNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-STAT_KEY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOC_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-POST_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TEXT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-NET_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DISC_DUE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ONLY_OFF sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DEFERRAL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DISC_RATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-NO_DUNNING sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TRAN_RATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CURRENCY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CURRENCY_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_LOC_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_PAR2_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_PAR3_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DISCOUNT_BASE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_AMOUNT_LOC_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_AMOUNT_PAR2_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_AMOUNT_PAR3_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_ACCT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-OFFSET_TAX sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PMNT_BLOCK sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PMNT_METH sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PERSON_NO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-GROUPING sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PERIOD_KEY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CHG_BLOCK sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CLEARDATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CLEARDOCNO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CL_POSTDTE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CLEAR_REAS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CLRG_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CLRG_CURR_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_CLEAR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_AMOUNT_CLEAR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-VAL_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CANCELED sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-NO_REPS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-REPET_GRP sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-LINE_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_PROC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_BLOCK sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CHECK_CLNG sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CALC_PERLO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CALC_PERHI sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PLAN_GRP sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PLAN_LEVEL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CM_EX_DAYS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_PLANNED sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PART_CLRG sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RESTRICT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAYMNT_GRP sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-INT_BLOCK sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-INT_INFO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAXJURCODE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TAX_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TRADE_ID sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ACCTASSCAT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ACCT_ASSGT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUN_INDIC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOC_TYPE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PARTNER sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-BK_DETAILS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ADDR_NO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-INT_KEY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_STAT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-REVERSECLG sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-XREPETPOS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-STAT_KEY_SRC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-REF_DOC_NO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-COLLECTION_POS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_RUN_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_IDENTIFICATION sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_ISSUE_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_PRINT_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_GROUP sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_LEVEL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_LEVEL_TYPE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_LEVEL_NEW sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_LEVEL_OPTIONAL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_NOTICE_CANCELED sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RETURN_REASON sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RETURN_VALUE_DATE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-NUMBER_OF_RETURNS sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RETURN_PAYMENT_DOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RETURN_DOCUMENT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-RETURN_REASON_TEXT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_OPEN_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_OPEN sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_TOTAL_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_TOTAL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_CLEARED_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_CLEARED sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DUE_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DUE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DEBIT_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_CREDIT_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DEBIT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_CREDIT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_RUN_TOTAL_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_RUN_TOTAL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUNN_AMOUNT_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_LOC_CURR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_OPEN_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_OPEN sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_TOTAL_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_TOTAL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_CLEARED_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_CLEARED sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_DUE_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_DUE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_DEBIT_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_CREDIT_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_DEBIT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EURO_AMOUNT_CREDIT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOC_TYPE_DESCRIPTION sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAYMENT_AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAYMENT_CURRENCY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAYMENT_CURRENCY_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-LOC_CURRCY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-LOC_CURRCY_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAR2_CURRENCY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAR2_CURRENCY_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAR3_CURRENCY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-PAR3_CURRENCY_ISO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOCNO_CLEARED_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DISC_RATE_CHAR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-TRAN_RATE_CHAR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DEDUCTION_LOC sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-AMOUNT_DEDUCTION sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DUE_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-DOWN_PAYMENT_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-ROW sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-FM_CATEGORY sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-FM_ORIG_AREA sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CMMT_ITEM sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-FUNDS_CTR sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-FUND sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-FUNC_AREA sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-W_TAX_CODE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-W_TAX_SUPPL sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-W_TAX_LICAT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-W_TAX_BASE sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-W_TAX_AMOUNT sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-EXEMPT_NO sy-vline
WA_/PM0/AOAL_CL_DS_ACCOUNT_ITEM_STR-CHANGE_INFO sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.