ABAP Select data from SAP table T8JVBCI 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 T8JVBCI 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 T8JVBCI. 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 T8JVBCI 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_T8JVBCI TYPE STANDARD TABLE OF T8JVBCI,
      WA_T8JVBCI TYPE T8JVBCI,
      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: <T8JVBCI> TYPE T8JVBCI.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM T8JVBCI
*  INTO TABLE @DATA(IT_T8JVBCI2).
*--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_T8JVBCI INDEX 1 INTO DATA(WA_T8JVBCI2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_T8JVBCI ASSIGNING <T8JVBCI>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<T8JVBCI>-INT_TYPE = 1.
<T8JVBCI>-NPIGROUP = 1.
<T8JVBCI>-NPITEXT = 1.
<T8JVBCI>-CIGROUP = 1.
<T8JVBCI>-CGTEXT = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_T8JVBCI-VNAME, sy-vline,
WA_T8JVBCI-VTEXT, sy-vline,
WA_T8JVBCI-ETYPE, sy-vline,
WA_T8JVBCI-ETEXT, sy-vline,
WA_T8JVBCI-EGRUP, sy-vline,
WA_T8JVBCI-EGTXT, sy-vline.
ENDLOOP. *Add any further fields from structure WA_T8JVBCI 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_T8JVBCI 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_T8JVBCI INTO WA_T8JVBCI. *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 VNAME CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_T8JVBCI-VNAME IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_T8JVBCI-VNAME.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit ALPHA, internal->external for field EGRUP CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_T8JVBCI-EGRUP IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_T8JVBCI-EGRUP.
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_T8JVBCI_STR,
INT_TYPE TYPE STRING,
NPIGROUP TYPE STRING,
NPITEXT TYPE STRING,
CIGROUP TYPE STRING,
CGTEXT TYPE STRING,
VNAME TYPE STRING,
VTEXT TYPE STRING,
ETYPE TYPE STRING,
ETEXT TYPE STRING,
EGRUP TYPE STRING,
EGTXT TYPE STRING,
RTCUR TYPE STRING,
STOPPAY TYPE STRING,
PEN01 TYPE STRING,
PEN02 TYPE STRING,
PEN03 TYPE STRING,
PEN04 TYPE STRING,
PEN05 TYPE STRING,
PEN06 TYPE STRING,
PEN07 TYPE STRING,
PEN08 TYPE STRING,
PEN09 TYPE STRING,
PEN10 TYPE STRING,
PEN11 TYPE STRING,
PEN12 TYPE STRING,
PEN13 TYPE STRING,
PEN14 TYPE STRING,
PEN15 TYPE STRING,
PEN16 TYPE STRING,
PEN17 TYPE STRING,
PEN18 TYPE STRING,
PEN19 TYPE STRING,
PEN20 TYPE STRING,
PEN21 TYPE STRING,
PEN22 TYPE STRING,
PEN23 TYPE STRING,
PEN24 TYPE STRING,
PEN25 TYPE STRING,
PEN26 TYPE STRING,
PEN27 TYPE STRING,
PEN28 TYPE STRING,
PEN29 TYPE STRING,
PEN30 TYPE STRING,
BEG01 TYPE STRING,
BEG02 TYPE STRING,
BEG03 TYPE STRING,
BEG04 TYPE STRING,
BEG05 TYPE STRING,
BEG06 TYPE STRING,
BEG07 TYPE STRING,
BEG08 TYPE STRING,
BEG09 TYPE STRING,
BEG10 TYPE STRING,
BEG11 TYPE STRING,
BEG12 TYPE STRING,
BEG13 TYPE STRING,
BEG14 TYPE STRING,
BEG15 TYPE STRING,
BEG16 TYPE STRING,
BEG17 TYPE STRING,
BEG18 TYPE STRING,
BEG19 TYPE STRING,
BEG20 TYPE STRING,
BEG21 TYPE STRING,
BEG22 TYPE STRING,
BEG23 TYPE STRING,
BEG24 TYPE STRING,
BEG25 TYPE STRING,
BEG26 TYPE STRING,
BEG27 TYPE STRING,
BEG28 TYPE STRING,
BEG29 TYPE STRING,
BEG30 TYPE STRING,
CUR01 TYPE STRING,
CUR02 TYPE STRING,
CUR03 TYPE STRING,
CUR04 TYPE STRING,
CUR05 TYPE STRING,
CUR06 TYPE STRING,
CUR07 TYPE STRING,
CUR08 TYPE STRING,
CUR09 TYPE STRING,
CUR10 TYPE STRING,
CUR11 TYPE STRING,
CUR12 TYPE STRING,
CUR13 TYPE STRING,
CUR14 TYPE STRING,
CUR15 TYPE STRING,
CUR16 TYPE STRING,
CUR17 TYPE STRING,
CUR18 TYPE STRING,
CUR19 TYPE STRING,
CUR20 TYPE STRING,
CUR21 TYPE STRING,
CUR22 TYPE STRING,
CUR23 TYPE STRING,
CUR24 TYPE STRING,
CUR25 TYPE STRING,
CUR26 TYPE STRING,
CUR27 TYPE STRING,
CUR28 TYPE STRING,
CUR29 TYPE STRING,
CUR30 TYPE STRING,
CUP01 TYPE STRING,
CUP02 TYPE STRING,
CUP03 TYPE STRING,
CUP04 TYPE STRING,
CUP05 TYPE STRING,
CUP06 TYPE STRING,
CUP07 TYPE STRING,
CUP08 TYPE STRING,
CUP09 TYPE STRING,
CUP10 TYPE STRING,
CUP11 TYPE STRING,
CUP12 TYPE STRING,
CUP13 TYPE STRING,
CUP14 TYPE STRING,
CUP15 TYPE STRING,
CUP16 TYPE STRING,
CUP17 TYPE STRING,
CUP18 TYPE STRING,
CUP19 TYPE STRING,
CUP20 TYPE STRING,
CUP21 TYPE STRING,
CUP22 TYPE STRING,
CUP23 TYPE STRING,
CUP24 TYPE STRING,
CUP25 TYPE STRING,
CUP26 TYPE STRING,
CUP27 TYPE STRING,
CUP28 TYPE STRING,
CUP29 TYPE STRING,
CUP30 TYPE STRING,
TOT01 TYPE STRING,
TOT02 TYPE STRING,
TOT03 TYPE STRING,
TOT04 TYPE STRING,
TOT05 TYPE STRING,
TOT06 TYPE STRING,
TOT07 TYPE STRING,
TOT08 TYPE STRING,
TOT09 TYPE STRING,
TOT10 TYPE STRING,
TOT11 TYPE STRING,
TOT12 TYPE STRING,
TOT13 TYPE STRING,
TOT14 TYPE STRING,
TOT15 TYPE STRING,
TOT16 TYPE STRING,
TOT17 TYPE STRING,
TOT18 TYPE STRING,
TOT19 TYPE STRING,
TOT20 TYPE STRING,
TOT21 TYPE STRING,
TOT22 TYPE STRING,
TOT23 TYPE STRING,
TOT24 TYPE STRING,
TOT25 TYPE STRING,
TOT26 TYPE STRING,
TOT27 TYPE STRING,
TOT28 TYPE STRING,
TOT29 TYPE STRING,
TOT30 TYPE STRING,
BEGBALL TYPE STRING,
CURBALL TYPE STRING,
ENDBALL TYPE STRING,END OF T_EKKO_STR. DATA: WA_T8JVBCI_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_T8JVBCI_STR-INT_TYPE sy-vline
WA_T8JVBCI_STR-NPIGROUP sy-vline
WA_T8JVBCI_STR-NPITEXT sy-vline
WA_T8JVBCI_STR-CIGROUP sy-vline
WA_T8JVBCI_STR-CGTEXT sy-vline
WA_T8JVBCI_STR-VNAME sy-vline
WA_T8JVBCI_STR-VTEXT sy-vline
WA_T8JVBCI_STR-ETYPE sy-vline
WA_T8JVBCI_STR-ETEXT sy-vline
WA_T8JVBCI_STR-EGRUP sy-vline
WA_T8JVBCI_STR-EGTXT sy-vline
WA_T8JVBCI_STR-RTCUR sy-vline
WA_T8JVBCI_STR-STOPPAY sy-vline
WA_T8JVBCI_STR-PEN01 sy-vline
WA_T8JVBCI_STR-PEN02 sy-vline
WA_T8JVBCI_STR-PEN03 sy-vline
WA_T8JVBCI_STR-PEN04 sy-vline
WA_T8JVBCI_STR-PEN05 sy-vline
WA_T8JVBCI_STR-PEN06 sy-vline
WA_T8JVBCI_STR-PEN07 sy-vline
WA_T8JVBCI_STR-PEN08 sy-vline
WA_T8JVBCI_STR-PEN09 sy-vline
WA_T8JVBCI_STR-PEN10 sy-vline
WA_T8JVBCI_STR-PEN11 sy-vline
WA_T8JVBCI_STR-PEN12 sy-vline
WA_T8JVBCI_STR-PEN13 sy-vline
WA_T8JVBCI_STR-PEN14 sy-vline
WA_T8JVBCI_STR-PEN15 sy-vline
WA_T8JVBCI_STR-PEN16 sy-vline
WA_T8JVBCI_STR-PEN17 sy-vline
WA_T8JVBCI_STR-PEN18 sy-vline
WA_T8JVBCI_STR-PEN19 sy-vline
WA_T8JVBCI_STR-PEN20 sy-vline
WA_T8JVBCI_STR-PEN21 sy-vline
WA_T8JVBCI_STR-PEN22 sy-vline
WA_T8JVBCI_STR-PEN23 sy-vline
WA_T8JVBCI_STR-PEN24 sy-vline
WA_T8JVBCI_STR-PEN25 sy-vline
WA_T8JVBCI_STR-PEN26 sy-vline
WA_T8JVBCI_STR-PEN27 sy-vline
WA_T8JVBCI_STR-PEN28 sy-vline
WA_T8JVBCI_STR-PEN29 sy-vline
WA_T8JVBCI_STR-PEN30 sy-vline
WA_T8JVBCI_STR-BEG01 sy-vline
WA_T8JVBCI_STR-BEG02 sy-vline
WA_T8JVBCI_STR-BEG03 sy-vline
WA_T8JVBCI_STR-BEG04 sy-vline
WA_T8JVBCI_STR-BEG05 sy-vline
WA_T8JVBCI_STR-BEG06 sy-vline
WA_T8JVBCI_STR-BEG07 sy-vline
WA_T8JVBCI_STR-BEG08 sy-vline
WA_T8JVBCI_STR-BEG09 sy-vline
WA_T8JVBCI_STR-BEG10 sy-vline
WA_T8JVBCI_STR-BEG11 sy-vline
WA_T8JVBCI_STR-BEG12 sy-vline
WA_T8JVBCI_STR-BEG13 sy-vline
WA_T8JVBCI_STR-BEG14 sy-vline
WA_T8JVBCI_STR-BEG15 sy-vline
WA_T8JVBCI_STR-BEG16 sy-vline
WA_T8JVBCI_STR-BEG17 sy-vline
WA_T8JVBCI_STR-BEG18 sy-vline
WA_T8JVBCI_STR-BEG19 sy-vline
WA_T8JVBCI_STR-BEG20 sy-vline
WA_T8JVBCI_STR-BEG21 sy-vline
WA_T8JVBCI_STR-BEG22 sy-vline
WA_T8JVBCI_STR-BEG23 sy-vline
WA_T8JVBCI_STR-BEG24 sy-vline
WA_T8JVBCI_STR-BEG25 sy-vline
WA_T8JVBCI_STR-BEG26 sy-vline
WA_T8JVBCI_STR-BEG27 sy-vline
WA_T8JVBCI_STR-BEG28 sy-vline
WA_T8JVBCI_STR-BEG29 sy-vline
WA_T8JVBCI_STR-BEG30 sy-vline
WA_T8JVBCI_STR-CUR01 sy-vline
WA_T8JVBCI_STR-CUR02 sy-vline
WA_T8JVBCI_STR-CUR03 sy-vline
WA_T8JVBCI_STR-CUR04 sy-vline
WA_T8JVBCI_STR-CUR05 sy-vline
WA_T8JVBCI_STR-CUR06 sy-vline
WA_T8JVBCI_STR-CUR07 sy-vline
WA_T8JVBCI_STR-CUR08 sy-vline
WA_T8JVBCI_STR-CUR09 sy-vline
WA_T8JVBCI_STR-CUR10 sy-vline
WA_T8JVBCI_STR-CUR11 sy-vline
WA_T8JVBCI_STR-CUR12 sy-vline
WA_T8JVBCI_STR-CUR13 sy-vline
WA_T8JVBCI_STR-CUR14 sy-vline
WA_T8JVBCI_STR-CUR15 sy-vline
WA_T8JVBCI_STR-CUR16 sy-vline
WA_T8JVBCI_STR-CUR17 sy-vline
WA_T8JVBCI_STR-CUR18 sy-vline
WA_T8JVBCI_STR-CUR19 sy-vline
WA_T8JVBCI_STR-CUR20 sy-vline
WA_T8JVBCI_STR-CUR21 sy-vline
WA_T8JVBCI_STR-CUR22 sy-vline
WA_T8JVBCI_STR-CUR23 sy-vline
WA_T8JVBCI_STR-CUR24 sy-vline
WA_T8JVBCI_STR-CUR25 sy-vline
WA_T8JVBCI_STR-CUR26 sy-vline
WA_T8JVBCI_STR-CUR27 sy-vline
WA_T8JVBCI_STR-CUR28 sy-vline
WA_T8JVBCI_STR-CUR29 sy-vline
WA_T8JVBCI_STR-CUR30 sy-vline
WA_T8JVBCI_STR-CUP01 sy-vline
WA_T8JVBCI_STR-CUP02 sy-vline
WA_T8JVBCI_STR-CUP03 sy-vline
WA_T8JVBCI_STR-CUP04 sy-vline
WA_T8JVBCI_STR-CUP05 sy-vline
WA_T8JVBCI_STR-CUP06 sy-vline
WA_T8JVBCI_STR-CUP07 sy-vline
WA_T8JVBCI_STR-CUP08 sy-vline
WA_T8JVBCI_STR-CUP09 sy-vline
WA_T8JVBCI_STR-CUP10 sy-vline
WA_T8JVBCI_STR-CUP11 sy-vline
WA_T8JVBCI_STR-CUP12 sy-vline
WA_T8JVBCI_STR-CUP13 sy-vline
WA_T8JVBCI_STR-CUP14 sy-vline
WA_T8JVBCI_STR-CUP15 sy-vline
WA_T8JVBCI_STR-CUP16 sy-vline
WA_T8JVBCI_STR-CUP17 sy-vline
WA_T8JVBCI_STR-CUP18 sy-vline
WA_T8JVBCI_STR-CUP19 sy-vline
WA_T8JVBCI_STR-CUP20 sy-vline
WA_T8JVBCI_STR-CUP21 sy-vline
WA_T8JVBCI_STR-CUP22 sy-vline
WA_T8JVBCI_STR-CUP23 sy-vline
WA_T8JVBCI_STR-CUP24 sy-vline
WA_T8JVBCI_STR-CUP25 sy-vline
WA_T8JVBCI_STR-CUP26 sy-vline
WA_T8JVBCI_STR-CUP27 sy-vline
WA_T8JVBCI_STR-CUP28 sy-vline
WA_T8JVBCI_STR-CUP29 sy-vline
WA_T8JVBCI_STR-CUP30 sy-vline
WA_T8JVBCI_STR-TOT01 sy-vline
WA_T8JVBCI_STR-TOT02 sy-vline
WA_T8JVBCI_STR-TOT03 sy-vline
WA_T8JVBCI_STR-TOT04 sy-vline
WA_T8JVBCI_STR-TOT05 sy-vline
WA_T8JVBCI_STR-TOT06 sy-vline
WA_T8JVBCI_STR-TOT07 sy-vline
WA_T8JVBCI_STR-TOT08 sy-vline
WA_T8JVBCI_STR-TOT09 sy-vline
WA_T8JVBCI_STR-TOT10 sy-vline
WA_T8JVBCI_STR-TOT11 sy-vline
WA_T8JVBCI_STR-TOT12 sy-vline
WA_T8JVBCI_STR-TOT13 sy-vline
WA_T8JVBCI_STR-TOT14 sy-vline
WA_T8JVBCI_STR-TOT15 sy-vline
WA_T8JVBCI_STR-TOT16 sy-vline
WA_T8JVBCI_STR-TOT17 sy-vline
WA_T8JVBCI_STR-TOT18 sy-vline
WA_T8JVBCI_STR-TOT19 sy-vline
WA_T8JVBCI_STR-TOT20 sy-vline
WA_T8JVBCI_STR-TOT21 sy-vline
WA_T8JVBCI_STR-TOT22 sy-vline
WA_T8JVBCI_STR-TOT23 sy-vline
WA_T8JVBCI_STR-TOT24 sy-vline
WA_T8JVBCI_STR-TOT25 sy-vline
WA_T8JVBCI_STR-TOT26 sy-vline
WA_T8JVBCI_STR-TOT27 sy-vline
WA_T8JVBCI_STR-TOT28 sy-vline
WA_T8JVBCI_STR-TOT29 sy-vline
WA_T8JVBCI_STR-TOT30 sy-vline
WA_T8JVBCI_STR-BEGBALL sy-vline
WA_T8JVBCI_STR-CURBALL sy-vline
WA_T8JVBCI_STR-ENDBALL sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.