ABAP Select data from SAP table CE5E_B1 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 CE5E_B1 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 CE5E_B1. 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 CE5E_B1 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_CE5E_B1 TYPE STANDARD TABLE OF CE5E_B1, WA_CE5E_B1 TYPE CE5E_B1, 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: <CE5E_B1> TYPE CE5E_B1. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_CE5E_B1. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM CE5E_B1 INTO TABLE IT_CE5E_B1. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM CE5E_B1 * INTO TABLE @DATA(IT_CE5E_B12). *--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_CE5E_B1 INDEX 1 INTO DATA(WA_CE5E_B12). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_CE5E_B1 ASSIGNING <CE5E_B1>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<CE5E_B1>-MANDT = 1.
<CE5E_B1>-PALEDGER = 1.
<CE5E_B1>-VRGAR = 1.
<CE5E_B1>-PLIKZ = 1.
<CE5E_B1>-VERSI = 1.
ENDLOOP. LOOP AT IT_CE5E_B1 INTO WA_CE5E_B1. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_CE5E_B1-HRKFT, sy-vline,
WA_CE5E_B1-PAOBJNR, sy-vline,
WA_CE5E_B1-PASUBNR, sy-vline,
WA_CE5E_B1-PERIO, sy-vline,
WA_CE5E_B1-ALTPERIO, sy-vline,
WA_CE5E_B1-WTGBTR, sy-vline.
ENDLOOP. *Add any further fields from structure WA_CE5E_B1 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_CE5E_B1 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_CE5E_B1 INTO WA_CE5E_B1. *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 LEDBO, internal->external for field PALEDGER CALL FUNCTION 'CONVERSION_EXIT_LEDBO_OUTPUT' EXPORTING input = WA_CE5E_B1-PALEDGER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CE5E_B1-PALEDGER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field VERSI CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_CE5E_B1-VERSI IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CE5E_B1-VERSI.
WRITE:/ 'New Value:', ld_input.
*Conversion exit PERI7, internal->external for field PERIO CALL FUNCTION 'CONVERSION_EXIT_PERI7_OUTPUT' EXPORTING input = WA_CE5E_B1-PERIO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CE5E_B1-PERIO.
WRITE:/ 'New Value:', ld_input.
*Conversion exit PERI7, internal->external for field ALTPERIO CALL FUNCTION 'CONVERSION_EXIT_PERI7_OUTPUT' EXPORTING input = WA_CE5E_B1-ALTPERIO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CE5E_B1-ALTPERIO.
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_CE5E_B1_STR,
MANDT TYPE STRING,
PALEDGER TYPE STRING,
VRGAR TYPE STRING,
PLIKZ TYPE STRING,
VERSI TYPE STRING,
HRKFT TYPE STRING,
PAOBJNR TYPE STRING,
PASUBNR TYPE STRING,
PERIO TYPE STRING,
ALTPERIO TYPE STRING,
WTGBTR TYPE STRING,
WOGBTR TYPE STRING,
WKGBTR TYPE STRING,
WKFBTR TYPE STRING,
MEGBTR TYPE STRING,
BDSVOL TYPE STRING,
BDSEFK TYPE STRING,
BZINBE TYPE STRING,
BOPPBE TYPE STRING,
BOPPHW TYPE STRING,
BZINKO TYPE STRING,
BMARBW TYPE STRING,
BABRBW TYPE STRING,
BDIFBW TYPE STRING,
BWTBBW TYPE STRING,
BDSKBW TYPE STRING,
BMKVOL TYPE STRING,
BMKVLD TYPE STRING,
BOPVOL TYPE STRING,
BVERKM TYPE STRING,
BKAUFM TYPE STRING,
BRKUGW TYPE STRING,
BRKDGW TYPE STRING,
BRKUVL TYPE STRING,
BRKDVL TYPE STRING,
BSKUGW TYPE STRING,
BSKDGW TYPE STRING,
BSKUVL TYPE STRING,
BSKDVL TYPE STRING,
BOPKOS TYPE STRING,
BHKOBE TYPE STRING,
AGESCH TYPE STRING,
BERTRZ TYPE STRING,
BZINAG TYPE STRING,
BOPPAG TYPE STRING,
BOPPAH TYPE STRING,
VVAZAK TYPE STRING,
VVAZNK TYPE STRING,
VVBEVP TYPE STRING,
VVDKOI TYPE STRING,
VVEKKB TYPE STRING,
VVEKKO TYPE STRING,
VVGKZU TYPE STRING,
VVIKPC TYPE STRING,
VVIKRE TYPE STRING,
VVLIKO TYPE STRING,
VVMRKO TYPE STRING,
VVPROA TYPE STRING,
VVPROB TYPE STRING,
VVPROE TYPE STRING,
VVRIKB TYPE STRING,
VVRIKO TYPE STRING,
VVRKOI TYPE STRING,
VVSTKO TYPE STRING,END OF T_EKKO_STR. DATA: WA_CE5E_B1_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_CE5E_B1_STR-MANDT sy-vline
WA_CE5E_B1_STR-PALEDGER sy-vline
WA_CE5E_B1_STR-VRGAR sy-vline
WA_CE5E_B1_STR-PLIKZ sy-vline
WA_CE5E_B1_STR-VERSI sy-vline
WA_CE5E_B1_STR-HRKFT sy-vline
WA_CE5E_B1_STR-PAOBJNR sy-vline
WA_CE5E_B1_STR-PASUBNR sy-vline
WA_CE5E_B1_STR-PERIO sy-vline
WA_CE5E_B1_STR-ALTPERIO sy-vline
WA_CE5E_B1_STR-WTGBTR sy-vline
WA_CE5E_B1_STR-WOGBTR sy-vline
WA_CE5E_B1_STR-WKGBTR sy-vline
WA_CE5E_B1_STR-WKFBTR sy-vline
WA_CE5E_B1_STR-MEGBTR sy-vline
WA_CE5E_B1_STR-BDSVOL sy-vline
WA_CE5E_B1_STR-BDSEFK sy-vline
WA_CE5E_B1_STR-BZINBE sy-vline
WA_CE5E_B1_STR-BOPPBE sy-vline
WA_CE5E_B1_STR-BOPPHW sy-vline
WA_CE5E_B1_STR-BZINKO sy-vline
WA_CE5E_B1_STR-BMARBW sy-vline
WA_CE5E_B1_STR-BABRBW sy-vline
WA_CE5E_B1_STR-BDIFBW sy-vline
WA_CE5E_B1_STR-BWTBBW sy-vline
WA_CE5E_B1_STR-BDSKBW sy-vline
WA_CE5E_B1_STR-BMKVOL sy-vline
WA_CE5E_B1_STR-BMKVLD sy-vline
WA_CE5E_B1_STR-BOPVOL sy-vline
WA_CE5E_B1_STR-BVERKM sy-vline
WA_CE5E_B1_STR-BKAUFM sy-vline
WA_CE5E_B1_STR-BRKUGW sy-vline
WA_CE5E_B1_STR-BRKDGW sy-vline
WA_CE5E_B1_STR-BRKUVL sy-vline
WA_CE5E_B1_STR-BRKDVL sy-vline
WA_CE5E_B1_STR-BSKUGW sy-vline
WA_CE5E_B1_STR-BSKDGW sy-vline
WA_CE5E_B1_STR-BSKUVL sy-vline
WA_CE5E_B1_STR-BSKDVL sy-vline
WA_CE5E_B1_STR-BOPKOS sy-vline
WA_CE5E_B1_STR-BHKOBE sy-vline
WA_CE5E_B1_STR-AGESCH sy-vline
WA_CE5E_B1_STR-BERTRZ sy-vline
WA_CE5E_B1_STR-BZINAG sy-vline
WA_CE5E_B1_STR-BOPPAG sy-vline
WA_CE5E_B1_STR-BOPPAH sy-vline
WA_CE5E_B1_STR-VVAZAK sy-vline
WA_CE5E_B1_STR-VVAZNK sy-vline
WA_CE5E_B1_STR-VVBEVP sy-vline
WA_CE5E_B1_STR-VVDKOI sy-vline
WA_CE5E_B1_STR-VVEKKB sy-vline
WA_CE5E_B1_STR-VVEKKO sy-vline
WA_CE5E_B1_STR-VVGKZU sy-vline
WA_CE5E_B1_STR-VVIKPC sy-vline
WA_CE5E_B1_STR-VVIKRE sy-vline
WA_CE5E_B1_STR-VVLIKO sy-vline
WA_CE5E_B1_STR-VVMRKO sy-vline
WA_CE5E_B1_STR-VVPROA sy-vline
WA_CE5E_B1_STR-VVPROB sy-vline
WA_CE5E_B1_STR-VVPROE sy-vline
WA_CE5E_B1_STR-VVRIKB sy-vline
WA_CE5E_B1_STR-VVRIKO sy-vline
WA_CE5E_B1_STR-VVRKOI sy-vline
WA_CE5E_B1_STR-VVSTKO sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.