ABAP Select data from SAP table RN1INPAT_ADMIS 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 RN1INPAT_ADMIS 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 RN1INPAT_ADMIS. 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 RN1INPAT_ADMIS 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_RN1INPAT_ADMIS TYPE STANDARD TABLE OF RN1INPAT_ADMIS,
      WA_RN1INPAT_ADMIS TYPE RN1INPAT_ADMIS,
      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: <RN1INPAT_ADMIS> TYPE RN1INPAT_ADMIS.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM RN1INPAT_ADMIS
*  INTO TABLE @DATA(IT_RN1INPAT_ADMIS2).
*--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_RN1INPAT_ADMIS INDEX 1 INTO DATA(WA_RN1INPAT_ADMIS2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_RN1INPAT_ADMIS ASSIGNING <RN1INPAT_ADMIS>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<RN1INPAT_ADMIS>-MANDT = 1.
<RN1INPAT_ADMIS>-EINRI = 1.
<RN1INPAT_ADMIS>-FALNR = 1.
<RN1INPAT_ADMIS>-LFDNR = 1.
<RN1INPAT_ADMIS>-BWART = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_RN1INPAT_ADMIS-BWART_X, sy-vline,
WA_RN1INPAT_ADMIS-BWIDT, sy-vline,
WA_RN1INPAT_ADMIS-BWIDT_X, sy-vline,
WA_RN1INPAT_ADMIS-BWIZT, sy-vline,
WA_RN1INPAT_ADMIS-BWIZT_X, sy-vline,
WA_RN1INPAT_ADMIS-PLANB, sy-vline.
ENDLOOP. *Add any further fields from structure WA_RN1INPAT_ADMIS 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_RN1INPAT_ADMIS 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_RN1INPAT_ADMIS INTO WA_RN1INPAT_ADMIS. *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 EINRI CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_RN1INPAT_ADMIS-EINRI IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_RN1INPAT_ADMIS-EINRI.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

*Conversion exit ALPHA, internal->external for field FARNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_RN1INPAT_ADMIS-FARNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_RN1INPAT_ADMIS-FARNR.
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_RN1INPAT_ADMIS_STR,
MANDT TYPE STRING,
EINRI TYPE STRING,
FALNR TYPE STRING,
LFDNR TYPE STRING,
BWART TYPE STRING,
BWART_X TYPE STRING,
BWIDT TYPE STRING,
BWIDT_X TYPE STRING,
BWIZT TYPE STRING,
BWIZT_X TYPE STRING,
PLANB TYPE STRING,
PLANB_X TYPE STRING,
TELNR TYPE STRING,
TELNR_X TYPE STRING,
TVKZ TYPE STRING,
TVKZ_X TYPE STRING,
KZTXT TYPE STRING,
KZTXT_X TYPE STRING,
LGTXT TYPE STRING,
LGTXT_X TYPE STRING,
NOTKZ TYPE STRING,
NOTKZ_X TYPE STRING,
UNFKZ TYPE STRING,
UNFKZ_X TYPE STRING,
UNFNR TYPE STRING,
UNFNR_X TYPE STRING,
UNFOR TYPE STRING,
UNFOR_X TYPE STRING,
UNFZT TYPE STRING,
UNFZT_X TYPE STRING,
UNFDT TYPE STRING,
UNFDT_X TYPE STRING,
UNFTX TYPE STRING,
UNFTX_X TYPE STRING,
UNLTX TYPE STRING,
UNLTX_X TYPE STRING,
WLPRI TYPE STRING,
WLPRI_X TYPE STRING,
AUFDS TYPE STRING,
AUFDS_X TYPE STRING,
ORGFA TYPE STRING,
ORGFA_X TYPE STRING,
ORGPF TYPE STRING,
ORGPF_X TYPE STRING,
ZIMMR TYPE STRING,
ZIMMR_X TYPE STRING,
BETT TYPE STRING,
BETT_X TYPE STRING,
DAUER TYPE STRING,
DAUER_X TYPE STRING,
EXTKH TYPE STRING,
EXTKH_X TYPE STRING,
ORGAU TYPE STRING,
ORGAU_X TYPE STRING,
UNFRN TYPE STRING,
UNFRN_X TYPE STRING,
BEKAT TYPE STRING,
BEKAT_X TYPE STRING,
STOID TYPE STRING,
STOID_X TYPE STRING,
BWGR1 TYPE STRING,
BWGR1_X TYPE STRING,
BWGR2 TYPE STRING,
BWGR2_X TYPE STRING,
UNFVS TYPE STRING,
UNFVS_X TYPE STRING,
CLASS TYPE STRING,
CLASS_X TYPE STRING,
RFSRC TYPE STRING,
RFSRC_X TYPE STRING,
FACHR TYPE STRING,
FACHR_X TYPE STRING,
UNFRT TYPE STRING,
UNFRT_X TYPE STRING,
UNFAV TYPE STRING,
UNFAV_X TYPE STRING,
WLTYP TYPE STRING,
WLTYP_X TYPE STRING,
WLRDT TYPE STRING,
WLRDT_X TYPE STRING,
WLRRN TYPE STRING,
WLRRN_X TYPE STRING,
WLSTA TYPE STRING,
WLSTA_X TYPE STRING,
WLHSP TYPE STRING,
WLHSP_X TYPE STRING,
WLADT TYPE STRING,
WLADT_X TYPE STRING,
BCODE TYPE STRING,
BCODE_X TYPE STRING,
BEXNR TYPE STRING,
BEXNR_X TYPE STRING,
WPLID TYPE STRING,
WPLID_X TYPE STRING,
FACHS TYPE STRING,
FACHS_X TYPE STRING,
WPLTY TYPE STRING,
WPLTY_X TYPE STRING,
EARNR TYPE STRING,
EARNR_X TYPE STRING,
HARNR TYPE STRING,
HARNR_X TYPE STRING,
BARNR TYPE STRING,
BARNR_X TYPE STRING,
FARNR TYPE STRING,
FARNR_X TYPE STRING,
KZ TYPE STRING,END OF T_EKKO_STR. DATA: WA_RN1INPAT_ADMIS_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_RN1INPAT_ADMIS_STR-MANDT sy-vline
WA_RN1INPAT_ADMIS_STR-EINRI sy-vline
WA_RN1INPAT_ADMIS_STR-FALNR sy-vline
WA_RN1INPAT_ADMIS_STR-LFDNR sy-vline
WA_RN1INPAT_ADMIS_STR-BWART sy-vline
WA_RN1INPAT_ADMIS_STR-BWART_X sy-vline
WA_RN1INPAT_ADMIS_STR-BWIDT sy-vline
WA_RN1INPAT_ADMIS_STR-BWIDT_X sy-vline
WA_RN1INPAT_ADMIS_STR-BWIZT sy-vline
WA_RN1INPAT_ADMIS_STR-BWIZT_X sy-vline
WA_RN1INPAT_ADMIS_STR-PLANB sy-vline
WA_RN1INPAT_ADMIS_STR-PLANB_X sy-vline
WA_RN1INPAT_ADMIS_STR-TELNR sy-vline
WA_RN1INPAT_ADMIS_STR-TELNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-TVKZ sy-vline
WA_RN1INPAT_ADMIS_STR-TVKZ_X sy-vline
WA_RN1INPAT_ADMIS_STR-KZTXT sy-vline
WA_RN1INPAT_ADMIS_STR-KZTXT_X sy-vline
WA_RN1INPAT_ADMIS_STR-LGTXT sy-vline
WA_RN1INPAT_ADMIS_STR-LGTXT_X sy-vline
WA_RN1INPAT_ADMIS_STR-NOTKZ sy-vline
WA_RN1INPAT_ADMIS_STR-NOTKZ_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFKZ sy-vline
WA_RN1INPAT_ADMIS_STR-UNFKZ_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFNR sy-vline
WA_RN1INPAT_ADMIS_STR-UNFNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFOR sy-vline
WA_RN1INPAT_ADMIS_STR-UNFOR_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFZT sy-vline
WA_RN1INPAT_ADMIS_STR-UNFZT_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFDT sy-vline
WA_RN1INPAT_ADMIS_STR-UNFDT_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFTX sy-vline
WA_RN1INPAT_ADMIS_STR-UNFTX_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNLTX sy-vline
WA_RN1INPAT_ADMIS_STR-UNLTX_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLPRI sy-vline
WA_RN1INPAT_ADMIS_STR-WLPRI_X sy-vline
WA_RN1INPAT_ADMIS_STR-AUFDS sy-vline
WA_RN1INPAT_ADMIS_STR-AUFDS_X sy-vline
WA_RN1INPAT_ADMIS_STR-ORGFA sy-vline
WA_RN1INPAT_ADMIS_STR-ORGFA_X sy-vline
WA_RN1INPAT_ADMIS_STR-ORGPF sy-vline
WA_RN1INPAT_ADMIS_STR-ORGPF_X sy-vline
WA_RN1INPAT_ADMIS_STR-ZIMMR sy-vline
WA_RN1INPAT_ADMIS_STR-ZIMMR_X sy-vline
WA_RN1INPAT_ADMIS_STR-BETT sy-vline
WA_RN1INPAT_ADMIS_STR-BETT_X sy-vline
WA_RN1INPAT_ADMIS_STR-DAUER sy-vline
WA_RN1INPAT_ADMIS_STR-DAUER_X sy-vline
WA_RN1INPAT_ADMIS_STR-EXTKH sy-vline
WA_RN1INPAT_ADMIS_STR-EXTKH_X sy-vline
WA_RN1INPAT_ADMIS_STR-ORGAU sy-vline
WA_RN1INPAT_ADMIS_STR-ORGAU_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFRN sy-vline
WA_RN1INPAT_ADMIS_STR-UNFRN_X sy-vline
WA_RN1INPAT_ADMIS_STR-BEKAT sy-vline
WA_RN1INPAT_ADMIS_STR-BEKAT_X sy-vline
WA_RN1INPAT_ADMIS_STR-STOID sy-vline
WA_RN1INPAT_ADMIS_STR-STOID_X sy-vline
WA_RN1INPAT_ADMIS_STR-BWGR1 sy-vline
WA_RN1INPAT_ADMIS_STR-BWGR1_X sy-vline
WA_RN1INPAT_ADMIS_STR-BWGR2 sy-vline
WA_RN1INPAT_ADMIS_STR-BWGR2_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFVS sy-vline
WA_RN1INPAT_ADMIS_STR-UNFVS_X sy-vline
WA_RN1INPAT_ADMIS_STR-CLASS sy-vline
WA_RN1INPAT_ADMIS_STR-CLASS_X sy-vline
WA_RN1INPAT_ADMIS_STR-RFSRC sy-vline
WA_RN1INPAT_ADMIS_STR-RFSRC_X sy-vline
WA_RN1INPAT_ADMIS_STR-FACHR sy-vline
WA_RN1INPAT_ADMIS_STR-FACHR_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFRT sy-vline
WA_RN1INPAT_ADMIS_STR-UNFRT_X sy-vline
WA_RN1INPAT_ADMIS_STR-UNFAV sy-vline
WA_RN1INPAT_ADMIS_STR-UNFAV_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLTYP sy-vline
WA_RN1INPAT_ADMIS_STR-WLTYP_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLRDT sy-vline
WA_RN1INPAT_ADMIS_STR-WLRDT_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLRRN sy-vline
WA_RN1INPAT_ADMIS_STR-WLRRN_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLSTA sy-vline
WA_RN1INPAT_ADMIS_STR-WLSTA_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLHSP sy-vline
WA_RN1INPAT_ADMIS_STR-WLHSP_X sy-vline
WA_RN1INPAT_ADMIS_STR-WLADT sy-vline
WA_RN1INPAT_ADMIS_STR-WLADT_X sy-vline
WA_RN1INPAT_ADMIS_STR-BCODE sy-vline
WA_RN1INPAT_ADMIS_STR-BCODE_X sy-vline
WA_RN1INPAT_ADMIS_STR-BEXNR sy-vline
WA_RN1INPAT_ADMIS_STR-BEXNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-WPLID sy-vline
WA_RN1INPAT_ADMIS_STR-WPLID_X sy-vline
WA_RN1INPAT_ADMIS_STR-FACHS sy-vline
WA_RN1INPAT_ADMIS_STR-FACHS_X sy-vline
WA_RN1INPAT_ADMIS_STR-WPLTY sy-vline
WA_RN1INPAT_ADMIS_STR-WPLTY_X sy-vline
WA_RN1INPAT_ADMIS_STR-EARNR sy-vline
WA_RN1INPAT_ADMIS_STR-EARNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-HARNR sy-vline
WA_RN1INPAT_ADMIS_STR-HARNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-BARNR sy-vline
WA_RN1INPAT_ADMIS_STR-BARNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-FARNR sy-vline
WA_RN1INPAT_ADMIS_STR-FARNR_X sy-vline
WA_RN1INPAT_ADMIS_STR-KZ sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.