ABAP Select data from SAP table PIN_ESEP_FIELDS_ALV 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 PIN_ESEP_FIELDS_ALV 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 PIN_ESEP_FIELDS_ALV. 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 PIN_ESEP_FIELDS_ALV 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_PIN_ESEP_FIELDS_ALV TYPE STANDARD TABLE OF PIN_ESEP_FIELDS_ALV,
      WA_PIN_ESEP_FIELDS_ALV TYPE PIN_ESEP_FIELDS_ALV,
      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: <PIN_ESEP_FIELDS_ALV> TYPE PIN_ESEP_FIELDS_ALV.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PIN_ESEP_FIELDS_ALV
*  INTO TABLE @DATA(IT_PIN_ESEP_FIELDS_ALV2).
*--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_PIN_ESEP_FIELDS_ALV INDEX 1 INTO DATA(WA_PIN_ESEP_FIELDS_ALV2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PIN_ESEP_FIELDS_ALV ASSIGNING <PIN_ESEP_FIELDS_ALV>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PIN_ESEP_FIELDS_ALV>-UNAME = 1.
<PIN_ESEP_FIELDS_ALV>-EEMOB = 1.
<PIN_ESEP_FIELDS_ALV>-EETPH = 1.
<PIN_ESEP_FIELDS_ALV>-EATPH = 1.
<PIN_ESEP_FIELDS_ALV>-EEFAX = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PIN_ESEP_FIELDS_ALV-EMAIL, sy-vline,
WA_PIN_ESEP_FIELDS_ALV-LOCAT, sy-vline,
WA_PIN_ESEP_FIELDS_ALV-UNAME_TXT, sy-vline,
WA_PIN_ESEP_FIELDS_ALV-EARQN, sy-vline,
WA_PIN_ESEP_FIELDS_ALV-PERNR, sy-vline,
WA_PIN_ESEP_FIELDS_ALV-MOLGA, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PIN_ESEP_FIELDS_ALV 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_PIN_ESEP_FIELDS_ALV 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_PIN_ESEP_FIELDS_ALV INTO WA_PIN_ESEP_FIELDS_ALV. *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 SXIDN, internal->external for field EMAIL CALL FUNCTION 'CONVERSION_EXIT_SXIDN_OUTPUT' EXPORTING input = WA_PIN_ESEP_FIELDS_ALV-EMAIL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_PIN_ESEP_FIELDS_ALV-EMAIL.
WRITE:/ 'New Value:', ld_input.

*Conversion exit PDATE, internal->external for field GBDAT CALL FUNCTION 'CONVERSION_EXIT_PDATE_OUTPUT' EXPORTING input = WA_PIN_ESEP_FIELDS_ALV-GBDAT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_PIN_ESEP_FIELDS_ALV-GBDAT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field KOSTL CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_PIN_ESEP_FIELDS_ALV-KOSTL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_PIN_ESEP_FIELDS_ALV-KOSTL.
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_PIN_ESEP_FIELDS_ALV_STR,
UNAME TYPE STRING,
EEMOB TYPE STRING,
EETPH TYPE STRING,
EATPH TYPE STRING,
EEFAX TYPE STRING,
EMAIL TYPE STRING,
LOCAT TYPE STRING,
UNAME_TXT TYPE STRING,
EARQN TYPE STRING,
PERNR TYPE STRING,
MOLGA TYPE STRING,
EASTP TYPE STRING,
EAGST TYPE STRING,
EAIBR TYPE STRING,
EAIBU TYPE STRING,
EAIOD TYPE STRING,
EAIOT TYPE STRING,
R_MASSN TYPE STRING,
R_MASSG TYPE STRING,
R_EADRN TYPE STRING,
R_EARDT TYPE STRING,
A_MASSN TYPE STRING,
A_MASSG TYPE STRING,
A_EADRN TYPE STRING,
A_EARDT TYPE STRING,
EAPDL TYPE STRING,
EAPHE TYPE STRING,
EAPHR TYPE STRING,
EAPOD TYPE STRING,
EAPOT TYPE STRING,
EAPHD TYPE STRING,
EAUOD TYPE STRING,
EAUOT TYPE STRING,
EALKR TYPE STRING,
EAKOD TYPE STRING,
EAKOT TYPE STRING,
EALKD TYPE STRING,
EAROD TYPE STRING,
EAROT TYPE STRING,
EARJR TYPE STRING,
EAWDE TYPE STRING,
EAWDR TYPE STRING,
EALBR TYPE STRING,
EALBU TYPE STRING,
EALOD TYPE STRING,
EALOT TYPE STRING,
EASRC TYPE STRING,
EAWID TYPE STRING,
EEI_EAWID TYPE STRING,
HEI_EAWID TYPE STRING,
ORGEH TYPE STRING,
EAMGR TYPE STRING,
EAHRM TYPE STRING,
EAAKY TYPE STRING,
EARKY TYPE STRING,
EAEFN TYPE STRING,
EAMFN TYPE STRING,
EAHFN TYPE STRING,
EAEFG TYPE STRING,
EAT50 TYPE STRING,
X_EAT50 TYPE STRING,
PERNR_TXT TYPE STRING,
EASTP_TXT TYPE STRING,
EAIBR_TXT TYPE STRING,
EAIBU_TXT TYPE STRING,
EAPHR_TXT TYPE STRING,
EALKR_TXT TYPE STRING,
EARJR_TXT TYPE STRING,
EAWDR_TXT TYPE STRING,
EALBR_TXT TYPE STRING,
EALBU_TXT TYPE STRING,
ORGEH_TXT TYPE STRING,
EAMGR_TXT TYPE STRING,
EAHRM_TXT TYPE STRING,
EAAKY_TXT TYPE STRING,
EARKY_TXT TYPE STRING,
R_MASSN_TXT TYPE STRING,
R_MASSG_TXT TYPE STRING,
R_EADRN_TXT TYPE STRING,
A_MASSN_TXT TYPE STRING,
A_MASSG_TXT TYPE STRING,
A_EADRN_TXT TYPE STRING,
EALKR_VIS TYPE STRING,
EAPHR_VIS TYPE STRING,
EARJR_VIS TYPE STRING,
EAWDR_VIS TYPE STRING,
PERNR_EDT TYPE STRING,
MOLGA_TXT TYPE STRING,
EAGST_TXT TYPE STRING,
EAROW TYPE STRING,
EAROW_TXT TYPE STRING,
GBDAT TYPE STRING,
GESCH TYPE STRING,
FAMST TYPE STRING,
NATIO TYPE STRING,
DJOIN TYPE STRING,
EAHRI TYPE STRING,
EAVRI TYPE STRING,
BUKRS TYPE STRING,
KOSTL TYPE STRING,
JUPER TYPE STRING,
GSBER TYPE STRING,
WERKS TYPE STRING,
BTRTL TYPE STRING,
PERSG TYPE STRING,
PERSK TYPE STRING,
ABKRS TYPE STRING,
PLANS TYPE STRING,
STELL TYPE STRING,
RMNGR TYPE STRING,
HRMGR TYPE STRING,
GESCH_TXT TYPE STRING,
FAMST_TXT TYPE STRING,
NATIO_TXT TYPE STRING,
BUKRS_TXT TYPE STRING,
KOSTL_TXT TYPE STRING,
JUPER_TXT TYPE STRING,
GSBER_TXT TYPE STRING,
WERKS_TXT TYPE STRING,
BTRTL_TXT TYPE STRING,
PERSG_TXT TYPE STRING,
PERSK_TXT TYPE STRING,
ABKRS_TXT TYPE STRING,
PLANS_TXT TYPE STRING,
STELL_TXT TYPE STRING,
RMNGR_TXT TYPE STRING,
HRMGR_TXT TYPE STRING,
ICONS_TXT TYPE STRING,
EAMSG_TXT TYPE STRING,END OF T_EKKO_STR. DATA: WA_PIN_ESEP_FIELDS_ALV_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_PIN_ESEP_FIELDS_ALV_STR-UNAME sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EEMOB sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EETPH sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EATPH sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EEFAX sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EMAIL sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-LOCAT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-UNAME_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARQN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERNR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-MOLGA sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EASTP sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAGST sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIBR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIBU sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIOD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIOT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_MASSN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_MASSG sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_EADRN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_EARDT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_MASSN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_MASSG sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_EADRN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_EARDT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPDL sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPHE sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPHR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPOD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPOT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPHD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAUOD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAUOT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALKR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAKOD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAKOT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALKD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAROD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAROT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARJR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAWDE sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAWDR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALBR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALBU sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALOD sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALOT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EASRC sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAWID sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EEI_EAWID sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-HEI_EAWID sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-ORGEH sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAMGR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAHRM sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAAKY sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARKY sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAEFN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAMFN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAHFN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAEFG sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAT50 sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-X_EAT50 sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERNR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EASTP_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIBR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAIBU_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPHR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALKR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARJR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAWDR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALBR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALBU_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-ORGEH_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAMGR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAHRM_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAAKY_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARKY_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_MASSN_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_MASSG_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-R_EADRN_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_MASSN_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_MASSG_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-A_EADRN_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EALKR_VIS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAPHR_VIS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EARJR_VIS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAWDR_VIS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERNR_EDT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-MOLGA_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAGST_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAROW sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAROW_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-GBDAT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-GESCH sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-FAMST sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-NATIO sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-DJOIN sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAHRI sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAVRI sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-BUKRS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-KOSTL sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-JUPER sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-GSBER sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-WERKS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-BTRTL sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERSG sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERSK sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-ABKRS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PLANS sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-STELL sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-RMNGR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-HRMGR sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-GESCH_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-FAMST_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-NATIO_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-BUKRS_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-KOSTL_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-JUPER_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-GSBER_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-WERKS_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-BTRTL_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERSG_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PERSK_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-ABKRS_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-PLANS_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-STELL_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-RMNGR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-HRMGR_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-ICONS_TXT sy-vline
WA_PIN_ESEP_FIELDS_ALV_STR-EAMSG_TXT sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.