ABAP Select data from SAP table LEDLV_DB_DATA_TO_READ 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 LEDLV_DB_DATA_TO_READ 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 LEDLV_DB_DATA_TO_READ. 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 LEDLV_DB_DATA_TO_READ 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_LEDLV_DB_DATA_TO_READ TYPE STANDARD TABLE OF LEDLV_DB_DATA_TO_READ,
      WA_LEDLV_DB_DATA_TO_READ TYPE LEDLV_DB_DATA_TO_READ,
      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: <LEDLV_DB_DATA_TO_READ> TYPE LEDLV_DB_DATA_TO_READ.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM LEDLV_DB_DATA_TO_READ
*  INTO TABLE @DATA(IT_LEDLV_DB_DATA_TO_READ2).
*--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_LEDLV_DB_DATA_TO_READ INDEX 1 INTO DATA(WA_LEDLV_DB_DATA_TO_READ2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_LEDLV_DB_DATA_TO_READ ASSIGNING <LEDLV_DB_DATA_TO_READ>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<LEDLV_DB_DATA_TO_READ>-LIKP = 1.
<LEDLV_DB_DATA_TO_READ>-LIPS = 1.
<LEDLV_DB_DATA_TO_READ>-VBPA = 1.
<LEDLV_DB_DATA_TO_READ>-VEKP = 1.
<LEDLV_DB_DATA_TO_READ>-VEPO = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_LEDLV_DB_DATA_TO_READ-VBAK, sy-vline,
WA_LEDLV_DB_DATA_TO_READ-VBKD, sy-vline,
WA_LEDLV_DB_DATA_TO_READ-VBAP, sy-vline,
WA_LEDLV_DB_DATA_TO_READ-VBLB, sy-vline,
WA_LEDLV_DB_DATA_TO_READ-EIKP, sy-vline,
WA_LEDLV_DB_DATA_TO_READ-EIKP_TXT, sy-vline.
ENDLOOP. *Add any further fields from structure WA_LEDLV_DB_DATA_TO_READ 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_LEDLV_DB_DATA_TO_READ 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_LEDLV_DB_DATA_TO_READ INTO WA_LEDLV_DB_DATA_TO_READ. *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.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_LEDLV_DB_DATA_TO_READ_STR,
LIKP TYPE STRING,
LIPS TYPE STRING,
VBPA TYPE STRING,
VEKP TYPE STRING,
VEPO TYPE STRING,
VBAK TYPE STRING,
VBKD TYPE STRING,
VBAP TYPE STRING,
VBLB TYPE STRING,
EIKP TYPE STRING,
EIKP_TXT TYPE STRING,
EIPO TYPE STRING,
EIPO_TXT TYPE STRING,
KNVV TYPE STRING,
LFB1 TYPE STRING,
KNA1 TYPE STRING,
LFA1 TYPE STRING,
TVST TYPE STRING,
TVKO TYPE STRING,
TVBUR TYPE STRING,
PUMA TYPE STRING,
HD_ORG_TXT TYPE STRING,
IT_ORG_TXT TYPE STRING,
HD_GEN_TXT TYPE STRING,
IT_GEN_TXT TYPE STRING,
HD_ROUTE_DATA TYPE STRING,
LIPSRF TYPE STRING,
TVAPT TYPE STRING,
T023T TYPE STRING,
T179T TYPE STRING,
T001W TYPE STRING,
TVV1T TYPE STRING,
TVV2T TYPE STRING,
TVV3T TYPE STRING,
TVV4T TYPE STRING,
TVV5T TYPE STRING,
TVM1T TYPE STRING,
TVM2T TYPE STRING,
TVM3T TYPE STRING,
TVM4T TYPE STRING,
TVM5T TYPE STRING,
T001L TYPE STRING,
TLGRT TYPE STRING,
TTGRT TYPE STRING,
TVKBT TYPE STRING,
TVGRT TYPE STRING,
TVTWT TYPE STRING,
TSPAT TYPE STRING,
TMFGT TYPE STRING,
TVLP TYPE STRING,
VBADR TYPE STRING,
SERNO TYPE STRING,
CONFITM TYPE STRING,
CONFBATCH TYPE STRING,
MSR_HD TYPE STRING,
MSR_IT TYPE STRING,END OF T_EKKO_STR. DATA: WA_LEDLV_DB_DATA_TO_READ_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_LEDLV_DB_DATA_TO_READ_STR-LIKP sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-LIPS sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBPA sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VEKP sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VEPO sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBAK sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBKD sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBAP sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBLB sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-EIKP sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-EIKP_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-EIPO sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-EIPO_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-KNVV sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-LFB1 sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-KNA1 sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-LFA1 sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVST sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVKO sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVBUR sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-PUMA sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-HD_ORG_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-IT_ORG_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-HD_GEN_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-IT_GEN_TXT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-HD_ROUTE_DATA sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-LIPSRF sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVAPT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-T023T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-T179T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-T001W sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVV1T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVV2T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVV3T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVV4T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVV5T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVM1T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVM2T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVM3T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVM4T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVM5T sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-T001L sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TLGRT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TTGRT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVKBT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVGRT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVTWT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TSPAT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TMFGT sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-TVLP sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-VBADR sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-SERNO sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-CONFITM sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-CONFBATCH sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-MSR_HD sy-vline
WA_LEDLV_DB_DATA_TO_READ_STR-MSR_IT sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.