ABAP Select data from SAP table JBSBETFE 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 JBSBETFE 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 JBSBETFE. 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 JBSBETFE 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_JBSBETFE TYPE STANDARD TABLE OF JBSBETFE,
      WA_JBSBETFE TYPE JBSBETFE,
      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: <JBSBETFE> TYPE JBSBETFE.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM JBSBETFE
*  INTO TABLE @DATA(IT_JBSBETFE2).
*--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_JBSBETFE INDEX 1 INTO DATA(WA_JBSBETFE2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_JBSBETFE ASSIGNING <JBSBETFE>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<JBSBETFE>-BABSCH = 1.
<JBSBETFE>-BAUSBT = 1.
<JBSBETFE>-BDIFSL = 1.
<JBSBETFE>-BEWBRE = 1.
<JBSBETFE>-BOFLIM = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_JBSBETFE-BSREAL, sy-vline,
WA_JBSBETFE-BSPARB, sy-vline,
WA_JBSBETFE-BSPARG, sy-vline,
WA_JBSBETFE-BWKTSL, sy-vline,
WA_JBSBETFE-BWNOML, sy-vline,
WA_JBSBETFE-BWTFSL, sy-vline.
ENDLOOP. *Add any further fields from structure WA_JBSBETFE 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_JBSBETFE 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_JBSBETFE INTO WA_JBSBETFE. *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_JBSBETFE_STR,
BABSCH TYPE STRING,
BAUSBT TYPE STRING,
BDIFSL TYPE STRING,
BEWBRE TYPE STRING,
BOFLIM TYPE STRING,
BSREAL TYPE STRING,
BSPARB TYPE STRING,
BSPARG TYPE STRING,
BWKTSL TYPE STRING,
BWNOML TYPE STRING,
BWTFSL TYPE STRING,
BWTVSL TYPE STRING,
BZINSL TYPE STRING,
BZUSAG TYPE STRING,
BGSIKO TYPE STRING,
BSBE80 TYPE STRING,
BSBEVO TYPE STRING,
BSVOLL TYPE STRING,
BSW80K TYPE STRING,
BSW80N TYPE STRING,
BSWPVO TYPE STRING,
BSZENB TYPE STRING,
BIKI80 TYPE STRING,
BIPKIB TYPE STRING,
BINB80 TYPE STRING,
BIVOLL TYPE STRING,
BIZENB TYPE STRING,
BIASL1 TYPE STRING,
BIASL2 TYPE STRING,
BSF80K TYPE STRING,
BSF80N TYPE STRING,
BSFKIB TYPE STRING,
BSFVOL TYPE STRING,
BTERMP TYPE STRING,
BSIBT0 TYPE STRING,
BSIBT1 TYPE STRING,
BSIBT2 TYPE STRING,
BSIBT3 TYPE STRING,
BSIBT4 TYPE STRING,
BSIBT5 TYPE STRING,
BSIBT6 TYPE STRING,
BSIBT7 TYPE STRING,
BSIBT8 TYPE STRING,
BSIBT9 TYPE STRING,
BZUSGA TYPE STRING,
BZUSGC TYPE STRING,
BKRAEQ TYPE STRING,
BNETLZ TYPE STRING,
BNETMB TYPE STRING,
BOFFLS TYPE STRING,
BZAHLB TYPE STRING,
BSONSA TYPE STRING,
BSONSE TYPE STRING,
BZAUFW TYPE STRING,
BZERTR TYPE STRING,
BZAUSB TYPE STRING,
BZEINB TYPE STRING,
BRLZ1J TYPE STRING,
BRLZ2J TYPE STRING,
BAVALD TYPE STRING,
BSB1_1 TYPE STRING,
BSB1_2 TYPE STRING,
BSB14E TYPE STRING,
BSB14G TYPE STRING,
BSB2_1 TYPE STRING,
BSB2_2 TYPE STRING,
BSB24E TYPE STRING,
BSB24G TYPE STRING,
BSB3_1 TYPE STRING,
BSB3_2 TYPE STRING,
BSB34E TYPE STRING,
BSB34G TYPE STRING,
BSB4_1 TYPE STRING,
BSB4_2 TYPE STRING,
BSB44E TYPE STRING,
BSB44G TYPE STRING,
BSB5_1 TYPE STRING,
BSB5_2 TYPE STRING,
BSB54E TYPE STRING,
BSB54G TYPE STRING,
BAKAKN TYPE STRING,
BDMGEG TYPE STRING,
BEWBER TYPE STRING,
BIANOM TYPE STRING,
BILIMT TYPE STRING,
BINNOM TYPE STRING,
BKKOST TYPE STRING,
BKLIM2 TYPE STRING,
BKLIMI TYPE STRING,
BKOMPE TYPE STRING,
BMBMTP TYPE STRING,
BMBMBP TYPE STRING,
BMBMSL TYPE STRING,
BMIOS2 TYPE STRING,
BMIOSI TYPE STRING,
BNACHH TYPE STRING,
BORGSI TYPE STRING,
BRUECK TYPE STRING,
BSKI80 TYPE STRING,
BSKIZB TYPE STRING,
BSNB80 TYPE STRING,
BSPBET TYPE STRING,
BSTRIB TYPE STRING,
BUNEPG TYPE STRING,
BUNTER TYPE STRING,
BVORHA TYPE STRING,
BBETRG TYPE STRING,
BSTUCK TYPE STRING,
BKONAN TYPE STRING,END OF T_EKKO_STR. DATA: WA_JBSBETFE_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_JBSBETFE_STR-BABSCH sy-vline
WA_JBSBETFE_STR-BAUSBT sy-vline
WA_JBSBETFE_STR-BDIFSL sy-vline
WA_JBSBETFE_STR-BEWBRE sy-vline
WA_JBSBETFE_STR-BOFLIM sy-vline
WA_JBSBETFE_STR-BSREAL sy-vline
WA_JBSBETFE_STR-BSPARB sy-vline
WA_JBSBETFE_STR-BSPARG sy-vline
WA_JBSBETFE_STR-BWKTSL sy-vline
WA_JBSBETFE_STR-BWNOML sy-vline
WA_JBSBETFE_STR-BWTFSL sy-vline
WA_JBSBETFE_STR-BWTVSL sy-vline
WA_JBSBETFE_STR-BZINSL sy-vline
WA_JBSBETFE_STR-BZUSAG sy-vline
WA_JBSBETFE_STR-BGSIKO sy-vline
WA_JBSBETFE_STR-BSBE80 sy-vline
WA_JBSBETFE_STR-BSBEVO sy-vline
WA_JBSBETFE_STR-BSVOLL sy-vline
WA_JBSBETFE_STR-BSW80K sy-vline
WA_JBSBETFE_STR-BSW80N sy-vline
WA_JBSBETFE_STR-BSWPVO sy-vline
WA_JBSBETFE_STR-BSZENB sy-vline
WA_JBSBETFE_STR-BIKI80 sy-vline
WA_JBSBETFE_STR-BIPKIB sy-vline
WA_JBSBETFE_STR-BINB80 sy-vline
WA_JBSBETFE_STR-BIVOLL sy-vline
WA_JBSBETFE_STR-BIZENB sy-vline
WA_JBSBETFE_STR-BIASL1 sy-vline
WA_JBSBETFE_STR-BIASL2 sy-vline
WA_JBSBETFE_STR-BSF80K sy-vline
WA_JBSBETFE_STR-BSF80N sy-vline
WA_JBSBETFE_STR-BSFKIB sy-vline
WA_JBSBETFE_STR-BSFVOL sy-vline
WA_JBSBETFE_STR-BTERMP sy-vline
WA_JBSBETFE_STR-BSIBT0 sy-vline
WA_JBSBETFE_STR-BSIBT1 sy-vline
WA_JBSBETFE_STR-BSIBT2 sy-vline
WA_JBSBETFE_STR-BSIBT3 sy-vline
WA_JBSBETFE_STR-BSIBT4 sy-vline
WA_JBSBETFE_STR-BSIBT5 sy-vline
WA_JBSBETFE_STR-BSIBT6 sy-vline
WA_JBSBETFE_STR-BSIBT7 sy-vline
WA_JBSBETFE_STR-BSIBT8 sy-vline
WA_JBSBETFE_STR-BSIBT9 sy-vline
WA_JBSBETFE_STR-BZUSGA sy-vline
WA_JBSBETFE_STR-BZUSGC sy-vline
WA_JBSBETFE_STR-BKRAEQ sy-vline
WA_JBSBETFE_STR-BNETLZ sy-vline
WA_JBSBETFE_STR-BNETMB sy-vline
WA_JBSBETFE_STR-BOFFLS sy-vline
WA_JBSBETFE_STR-BZAHLB sy-vline
WA_JBSBETFE_STR-BSONSA sy-vline
WA_JBSBETFE_STR-BSONSE sy-vline
WA_JBSBETFE_STR-BZAUFW sy-vline
WA_JBSBETFE_STR-BZERTR sy-vline
WA_JBSBETFE_STR-BZAUSB sy-vline
WA_JBSBETFE_STR-BZEINB sy-vline
WA_JBSBETFE_STR-BRLZ1J sy-vline
WA_JBSBETFE_STR-BRLZ2J sy-vline
WA_JBSBETFE_STR-BAVALD sy-vline
WA_JBSBETFE_STR-BSB1_1 sy-vline
WA_JBSBETFE_STR-BSB1_2 sy-vline
WA_JBSBETFE_STR-BSB14E sy-vline
WA_JBSBETFE_STR-BSB14G sy-vline
WA_JBSBETFE_STR-BSB2_1 sy-vline
WA_JBSBETFE_STR-BSB2_2 sy-vline
WA_JBSBETFE_STR-BSB24E sy-vline
WA_JBSBETFE_STR-BSB24G sy-vline
WA_JBSBETFE_STR-BSB3_1 sy-vline
WA_JBSBETFE_STR-BSB3_2 sy-vline
WA_JBSBETFE_STR-BSB34E sy-vline
WA_JBSBETFE_STR-BSB34G sy-vline
WA_JBSBETFE_STR-BSB4_1 sy-vline
WA_JBSBETFE_STR-BSB4_2 sy-vline
WA_JBSBETFE_STR-BSB44E sy-vline
WA_JBSBETFE_STR-BSB44G sy-vline
WA_JBSBETFE_STR-BSB5_1 sy-vline
WA_JBSBETFE_STR-BSB5_2 sy-vline
WA_JBSBETFE_STR-BSB54E sy-vline
WA_JBSBETFE_STR-BSB54G sy-vline
WA_JBSBETFE_STR-BAKAKN sy-vline
WA_JBSBETFE_STR-BDMGEG sy-vline
WA_JBSBETFE_STR-BEWBER sy-vline
WA_JBSBETFE_STR-BIANOM sy-vline
WA_JBSBETFE_STR-BILIMT sy-vline
WA_JBSBETFE_STR-BINNOM sy-vline
WA_JBSBETFE_STR-BKKOST sy-vline
WA_JBSBETFE_STR-BKLIM2 sy-vline
WA_JBSBETFE_STR-BKLIMI sy-vline
WA_JBSBETFE_STR-BKOMPE sy-vline
WA_JBSBETFE_STR-BMBMTP sy-vline
WA_JBSBETFE_STR-BMBMBP sy-vline
WA_JBSBETFE_STR-BMBMSL sy-vline
WA_JBSBETFE_STR-BMIOS2 sy-vline
WA_JBSBETFE_STR-BMIOSI sy-vline
WA_JBSBETFE_STR-BNACHH sy-vline
WA_JBSBETFE_STR-BORGSI sy-vline
WA_JBSBETFE_STR-BRUECK sy-vline
WA_JBSBETFE_STR-BSKI80 sy-vline
WA_JBSBETFE_STR-BSKIZB sy-vline
WA_JBSBETFE_STR-BSNB80 sy-vline
WA_JBSBETFE_STR-BSPBET sy-vline
WA_JBSBETFE_STR-BSTRIB sy-vline
WA_JBSBETFE_STR-BUNEPG sy-vline
WA_JBSBETFE_STR-BUNTER sy-vline
WA_JBSBETFE_STR-BVORHA sy-vline
WA_JBSBETFE_STR-BBETRG sy-vline
WA_JBSBETFE_STR-BSTUCK sy-vline
WA_JBSBETFE_STR-BKONAN sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.