ABAP Select data from SAP table ISMSD_PDF_RENEWALOFFER_HEAD 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 ISMSD_PDF_RENEWALOFFER_HEAD 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 ISMSD_PDF_RENEWALOFFER_HEAD. 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 ISMSD_PDF_RENEWALOFFER_HEAD 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_ISMSD_PDF_RENEWALOFFER_HEAD TYPE STANDARD TABLE OF ISMSD_PDF_RENEWALOFFER_HEAD,
      WA_ISMSD_PDF_RENEWALOFFER_HEAD TYPE ISMSD_PDF_RENEWALOFFER_HEAD,
      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: <ISMSD_PDF_RENEWALOFFER_HEAD> TYPE ISMSD_PDF_RENEWALOFFER_HEAD.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM ISMSD_PDF_RENEWALOFFER_HEAD
*  INTO TABLE @DATA(IT_ISMSD_PDF_RENEWALOFFER_HEAD2).
*--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_ISMSD_PDF_RENEWALOFFER_HEAD INDEX 1 INTO DATA(WA_ISMSD_PDF_RENEWALOFFER_HEAD2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_ISMSD_PDF_RENEWALOFFER_HEAD ASSIGNING <ISMSD_PDF_RENEWALOFFER_HEAD>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<ISMSD_PDF_RENEWALOFFER_HEAD>-JKAK = 1.
<ISMSD_PDF_RENEWALOFFER_HEAD>-MANDT = 1.
<ISMSD_PDF_RENEWALOFFER_HEAD>-VBELN = 1.
<ISMSD_PDF_RENEWALOFFER_HEAD>-GPAG = 1.
<ISMSD_PDF_RENEWALOFFER_HEAD>-JPARVWGPAG = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_ISMSD_PDF_RENEWALOFFER_HEAD-ANGDT, sy-vline,
WA_ISMSD_PDF_RENEWALOFFER_HEAD-BNDDT, sy-vline,
WA_ISMSD_PDF_RENEWALOFFER_HEAD-VBTYP, sy-vline,
WA_ISMSD_PDF_RENEWALOFFER_HEAD-TRVOG, sy-vline,
WA_ISMSD_PDF_RENEWALOFFER_HEAD-AUART, sy-vline,
WA_ISMSD_PDF_RENEWALOFFER_HEAD-AUARTGRP, sy-vline.
ENDLOOP. *Add any further fields from structure WA_ISMSD_PDF_RENEWALOFFER_HEAD 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_ISMSD_PDF_RENEWALOFFER_HEAD 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_ISMSD_PDF_RENEWALOFFER_HEAD INTO WA_ISMSD_PDF_RENEWALOFFER_HEAD. *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 VBELN CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ISMSD_PDF_RENEWALOFFER_HEAD-VBELN IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ISMSD_PDF_RENEWALOFFER_HEAD-VBELN.
WRITE:/ 'New Value:', ld_input.

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

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

*Conversion exit ALPHA, internal->external for field STGVB CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_ISMSD_PDF_RENEWALOFFER_HEAD-STGVB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_ISMSD_PDF_RENEWALOFFER_HEAD-STGVB.
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_ISMSD_PDF_RENEWALOFFER_HEAD_STR,
JKAK TYPE STRING,
MANDT TYPE STRING,
VBELN TYPE STRING,
GPAG TYPE STRING,
JPARVWGPAG TYPE STRING,
ANGDT TYPE STRING,
BNDDT TYPE STRING,
VBTYP TYPE STRING,
TRVOG TYPE STRING,
AUART TYPE STRING,
AUARTGRP TYPE STRING,
WAERK TYPE STRING,
NETWR TYPE STRING,
VKORG TYPE STRING,
VTWEG TYPE STRING,
SPART TYPE STRING,
VKGRP TYPE STRING,
VKBUR TYPE STRING,
EXEMPLART TYPE STRING,
GSBER TYPE STRING,
GSKST TYPE STRING,
KNUMV TYPE STRING,
FAKSP TYPE STRING,
KALSM TYPE STRING,
KURST TYPE STRING,
BSTNK TYPE STRING,
BSARK TYPE STRING,
BSTDK TYPE STRING,
BSTZD TYPE STRING,
IHREZ TYPE STRING,
BNAME TYPE STRING,
TELF1 TYPE STRING,
STAFO TYPE STRING,
STWAE TYPE STRING,
XIMMATRIK TYPE STRING,
IMMATDAT TYPE STRING,
XSEPFKKOPF TYPE STRING,
XREMRECHT TYPE STRING,
REMSP TYPE STRING,
KORRGRD TYPE STRING,
REMVON TYPE STRING,
REMBIS TYPE STRING,
REFBELEG TYPE STRING,
REMDATUM TYPE STRING,
REMSCHEIN TYPE STRING,
IVWDATUM TYPE STRING,
POSNR_LAST TYPE STRING,
POSEX_LAST TYPE STRING,
KPOSN_LAST TYPE STRING,
XFKBASAUFT TYPE STRING,
XFKBASLIEF TYPE STRING,
XJKSOFAKT TYPE STRING,
ERFUSER TYPE STRING,
ERFDATE TYPE STRING,
ERFTIME TYPE STRING,
AENUSER TYPE STRING,
AENDATE TYPE STRING,
AENTIME TYPE STRING,
XWBZABO TYPE STRING,
XFKVDICHT TYPE STRING,
XSTATARC TYPE STRING,
XNOMESS TYPE STRING,
KALSM_AMO TYPE STRING,
XRENEWAL TYPE STRING,
AMORTN TYPE STRING,
REKLERGB TYPE STRING,
REKLTYP TYPE STRING,
REKLDATUM TYPE STRING,
TJAK TYPE STRING,
MANDT TYPE STRING,
AUART TYPE STRING,
AUARTGRP TYPE STRING,
KOPGR TYPE STRING,
FKART TYPE STRING,
NUMKI TYPE STRING,
NUMKE TYPE STRING,
INCPO TYPE STRING,
UEVOR TYPE STRING,
FAKSK TYPE STRING,
TRVOG TYPE STRING,
SPAPO TYPE STRING,
SPAPR TYPE STRING,
TXN08 TYPE STRING,
FELDK TYPE STRING,
VBTYP TYPE STRING,
TXTGR TYPE STRING,
KALVG TYPE STRING,
KLIMP TYPE STRING,
KALSM TYPE STRING,
KSCHL TYPE STRING,
SPERR TYPE STRING,
XPVKANG TYPE STRING,
XUPDPRVA TYPE STRING,
XAUARTKORR TYPE STRING,
ERLDRERZ TYPE STRING,
EXEMPLART TYPE STRING,
XGPRSE TYPE STRING,
XGPRVK TYPE STRING,
XINTERN TYPE STRING,
XGPREV TYPE STRING,
XGPRVERLAG TYPE STRING,
XGPRALLG TYPE STRING,
ETVAR TYPE STRING,
PRSFD TYPE STRING,
STGVB TYPE STRING,
XKOPFEINST TYPE STRING,
XPUEBEINST TYPE STRING,
XFKBASAUFT TYPE STRING,
XFKBASLIEF TYPE STRING,
AUART_REKL TYPE STRING,
AUART_NF TYPE STRING,
AENAM TYPE STRING,
AEDAT TYPE STRING,
XWBZABO TYPE STRING,
XRENEWAL TYPE STRING,
AMORTN TYPE STRING,
AUART_OF TYPE STRING,
XCCARD TYPE STRING,
FKART_TRANSFER TYPE STRING,
TRANSFERHR TYPE STRING,
XRETRO_BILL TYPE STRING,END OF T_EKKO_STR. DATA: WA_ISMSD_PDF_RENEWALOFFER_HEAD_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_ISMSD_PDF_RENEWALOFFER_HEAD_STR-JKAK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-MANDT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VBELN sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-GPAG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-JPARVWGPAG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ANGDT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BNDDT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VBTYP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TRVOG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUARTGRP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-WAERK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-NETWR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VKORG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VTWEG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-SPART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VKGRP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VKBUR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-EXEMPLART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-GSBER sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-GSKST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KNUMV sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-FAKSP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KALSM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KURST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BSTNK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BSARK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BSTDK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BSTZD sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-IHREZ sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-BNAME sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TELF1 sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-STAFO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-STWAE sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XIMMATRIK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-IMMATDAT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XSEPFKKOPF sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XREMRECHT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REMSP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KORRGRD sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REMVON sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REMBIS sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REFBELEG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REMDATUM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REMSCHEIN sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-IVWDATUM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-POSNR_LAST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-POSEX_LAST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KPOSN_LAST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XFKBASAUFT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XFKBASLIEF sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XJKSOFAKT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ERFUSER sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ERFDATE sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ERFTIME sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AENUSER sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AENDATE sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AENTIME sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XWBZABO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XFKVDICHT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XSTATARC sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XNOMESS sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KALSM_AMO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XRENEWAL sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AMORTN sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REKLERGB sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REKLTYP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-REKLDATUM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TJAK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-MANDT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUARTGRP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KOPGR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-FKART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-NUMKI sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-NUMKE sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-INCPO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-UEVOR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-FAKSK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TRVOG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-SPAPO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-SPAPR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TXN08 sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-FELDK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-VBTYP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TXTGR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KALVG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KLIMP sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KALSM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-KSCHL sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-SPERR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XPVKANG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XUPDPRVA sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XAUARTKORR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ERLDRERZ sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-EXEMPLART sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XGPRSE sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XGPRVK sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XINTERN sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XGPREV sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XGPRVERLAG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XGPRALLG sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-ETVAR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-PRSFD sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-STGVB sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XKOPFEINST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XPUEBEINST sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XFKBASAUFT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XFKBASLIEF sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUART_REKL sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUART_NF sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AENAM sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AEDAT sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XWBZABO sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XRENEWAL sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AMORTN sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-AUART_OF sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XCCARD sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-FKART_TRANSFER sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-TRANSFERHR sy-vline
WA_ISMSD_PDF_RENEWALOFFER_HEAD_STR-XRETRO_BILL sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.