ABAP Select data from SAP table PIQACADOFFERDETAIL_EV 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 PIQACADOFFERDETAIL_EV 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 PIQACADOFFERDETAIL_EV. 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 PIQACADOFFERDETAIL_EV 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_PIQACADOFFERDETAIL_EV TYPE STANDARD TABLE OF PIQACADOFFERDETAIL_EV, WA_PIQACADOFFERDETAIL_EV TYPE PIQACADOFFERDETAIL_EV, 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: <PIQACADOFFERDETAIL_EV> TYPE PIQACADOFFERDETAIL_EV. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_PIQACADOFFERDETAIL_EV. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM PIQACADOFFERDETAIL_EV INTO TABLE IT_PIQACADOFFERDETAIL_EV. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM PIQACADOFFERDETAIL_EV * INTO TABLE @DATA(IT_PIQACADOFFERDETAIL_EV2). *--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_PIQACADOFFERDETAIL_EV INDEX 1 INTO DATA(WA_PIQACADOFFERDETAIL_EV2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_PIQACADOFFERDETAIL_EV ASSIGNING <PIQACADOFFERDETAIL_EV>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<PIQACADOFFERDETAIL_EV>-OTYPE_EV = 1.
<PIQACADOFFERDETAIL_EV>-OTEXT_EV = 1.
<PIQACADOFFERDETAIL_EV>-OBJID_EV = 1.
<PIQACADOFFERDETAIL_EV>-SHORT_EV = 1.
<PIQACADOFFERDETAIL_EV>-STEXT_EV = 1.
ENDLOOP. LOOP AT IT_PIQACADOFFERDETAIL_EV INTO WA_PIQACADOFFERDETAIL_EV. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_PIQACADOFFERDETAIL_EV-BEGDA_EV, sy-vline,
WA_PIQACADOFFERDETAIL_EV-ENDDA_EV, sy-vline,
WA_PIQACADOFFERDETAIL_EV-ISTAT_EV, sy-vline,
WA_PIQACADOFFERDETAIL_EV-ISTATTXT_EV, sy-vline,
WA_PIQACADOFFERDETAIL_EV-ISTAT_FIX, sy-vline,
WA_PIQACADOFFERDETAIL_EV-ISTAT_PLAN, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PIQACADOFFERDETAIL_EV 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_PIQACADOFFERDETAIL_EV 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_PIQACADOFFERDETAIL_EV INTO WA_PIQACADOFFERDETAIL_EV. *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 ISOLA, internal->external for field LANGU_EV CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT' EXPORTING input = WA_PIQACADOFFERDETAIL_EV-LANGU_EV IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_PIQACADOFFERDETAIL_EV-LANGU_EV.
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_PIQACADOFFERDETAIL_EV_STR,
OTYPE_EV TYPE STRING,
OTEXT_EV TYPE STRING,
OBJID_EV TYPE STRING,
SHORT_EV TYPE STRING,
STEXT_EV TYPE STRING,
BEGDA_EV TYPE STRING,
ENDDA_EV TYPE STRING,
ISTAT_EV TYPE STRING,
ISTATTXT_EV TYPE STRING,
ISTAT_FIX TYPE STRING,
ISTAT_PLAN TYPE STRING,
KAPZ1_EV TYPE STRING,
KAPZ2_EV TYPE STRING,
KAPZ3_EV TYPE STRING,
LANGU_EV TYPE STRING,
LOCKM_EV TYPE STRING,
DELET_EV TYPE STRING,
EXTRN_EV TYPE STRING,
TEILX_EV TYPE STRING,
CANCR_EV TYPE STRING,
BCONT_EV TYPE STRING,
WCONT_EV TYPE STRING,
NCONT_EV TYPE STRING,
UPDAX_EV TYPE STRING,
FLUPX_EV TYPE STRING,
COND1_EV TYPE STRING,
COND2_EV TYPE STRING,
CUBOE_EV TYPE STRING,
TZONE_EV TYPE STRING,
LANGUTXT_EV TYPE STRING,
AVAIL_PLACES_EV TYPE STRING,
SCHEDCATEG_EV TYPE STRING,
PLPERLIMBEG_EV TYPE STRING,
PLPERLIMBEGU_EV TYPE STRING,
PLPERLIMEND_EV TYPE STRING,
PLPERLIMENDU_EV TYPE STRING,
SCHEDBGDAY_EV TYPE STRING,
SCHEDCATEGTXT_EV TYPE STRING,
PLPERLIMBEGUTXT_EV TYPE STRING,
PLPERLIMENDUTXT_EV TYPE STRING,
SCHEDBGDAYTXT_EV TYPE STRING,
EVPROCSTAT_EV TYPE STRING,
EVPROCSTATTXT_EV TYPE STRING,
CHOURUNIT_EV TYPE STRING,
CONTACTHOURS_EV TYPE STRING,
ACTIVCHNGABL_EV TYPE STRING,
CHOURUNIT_TEXT_EV TYPE STRING,
OBJID_F_EV TYPE STRING,
SHORT_F_EV TYPE STRING,
STEXT_F_EV TYPE STRING,
KAPZ1CLC_EV TYPE STRING,
KAPZ2CLC_EV TYPE STRING,
KAPZ3CLC_EV TYPE STRING,
RECDAYSFREE TYPE STRING,
RECDAYSOFF TYPE STRING,
ROOM_OBJID_EV TYPE STRING,
ROOM_RETID_EV TYPE STRING,
INSTR_OTYPE_EV TYPE STRING,
INSTR_OBJID_EV TYPE STRING,
INSTR_RETID_EV TYPE STRING,
INSTR_PROZT_EV TYPE STRING,
ROOM_SHORT_EV TYPE STRING,
ROOM_STEXT_EV TYPE STRING,
ROOM_RETSH_EV TYPE STRING,
ROOM_RETTX_EV TYPE STRING,
INSTR_OTEXT_EV TYPE STRING,
INSTR_SHORT_EV TYPE STRING,
INSTR_STEXT_EV TYPE STRING,
INSTR_RETSH_EV TYPE STRING,
INSTR_RETTX_EV TYPE STRING,
MULTI_SE_ASGMT TYPE STRING,
COHORTUSE_EV TYPE STRING,
DELMODEOT_EV TYPE STRING,
OPERA_EV TYPE STRING,
FRAME1_EV TYPE STRING,
FRAME2_EV TYPE STRING,
FRAME3_EV TYPE STRING,
FRAME4_EV TYPE STRING,END OF T_EKKO_STR. DATA: WA_PIQACADOFFERDETAIL_EV_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_PIQACADOFFERDETAIL_EV_STR-OTYPE_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-OTEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-OBJID_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SHORT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-STEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-BEGDA_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ENDDA_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ISTAT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ISTATTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ISTAT_FIX sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ISTAT_PLAN sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ1_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ2_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ3_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-LANGU_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-LOCKM_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-DELET_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-EXTRN_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-TEILX_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-CANCR_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-BCONT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-WCONT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-NCONT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-UPDAX_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-FLUPX_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-COND1_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-COND2_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-CUBOE_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-TZONE_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-LANGUTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-AVAIL_PLACES_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SCHEDCATEG_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMBEG_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMBEGU_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMEND_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMENDU_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SCHEDBGDAY_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SCHEDCATEGTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMBEGUTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-PLPERLIMENDUTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SCHEDBGDAYTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-EVPROCSTAT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-EVPROCSTATTXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-CHOURUNIT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-CONTACTHOURS_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ACTIVCHNGABL_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-CHOURUNIT_TEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-OBJID_F_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-SHORT_F_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-STEXT_F_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ1CLC_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ2CLC_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-KAPZ3CLC_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-RECDAYSFREE sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-RECDAYSOFF sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_OBJID_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_RETID_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_OTYPE_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_OBJID_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_RETID_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_PROZT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_SHORT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_STEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_RETSH_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-ROOM_RETTX_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_OTEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_SHORT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_STEXT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_RETSH_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-INSTR_RETTX_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-MULTI_SE_ASGMT sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-COHORTUSE_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-DELMODEOT_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-OPERA_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-FRAME1_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-FRAME2_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-FRAME3_EV sy-vline
WA_PIQACADOFFERDETAIL_EV_STR-FRAME4_EV sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.