ABAP Select data from SAP table FPAYHX 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 FPAYHX 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 FPAYHX. 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 FPAYHX 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_FPAYHX TYPE STANDARD TABLE OF FPAYHX,
      WA_FPAYHX TYPE FPAYHX,
      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: <FPAYHX> TYPE FPAYHX.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM FPAYHX
*  INTO TABLE @DATA(IT_FPAYHX2).
*--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_FPAYHX INDEX 1 INTO DATA(WA_FPAYHX2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_FPAYHX ASSIGNING <FPAYHX>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<FPAYHX>-ZNM1S = 1.
<FPAYHX>-ZNM2S = 1.
<FPAYHX>-ZPLOR = 1.
<FPAYHX>-ZPFST = 1.
<FPAYHX>-ZLISO = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_FPAYHX-ZLNDX, sy-vline,
WA_FPAYHX-ZREGX, sy-vline,
WA_FPAYHX-ZBANK, sy-vline,
WA_FPAYHX-ZBREGX, sy-vline,
WA_FPAYHX-ZBISO, sy-vline,
WA_FPAYHX-ZBNKL_EXT, sy-vline.
ENDLOOP. *Add any further fields from structure WA_FPAYHX 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_FPAYHX 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_FPAYHX INTO WA_FPAYHX. *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 SPRAS CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT' EXPORTING input = WA_FPAYHX-SPRAS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FPAYHX-SPRAS.
WRITE:/ 'New Value:', ld_input.

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

*Conversion exit ISOLA, internal->external for field UBSPR CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT' EXPORTING input = WA_FPAYHX-UBSPR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FPAYHX-UBSPR.
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_FPAYHX_STR,
ZNM1S TYPE STRING,
ZNM2S TYPE STRING,
ZPLOR TYPE STRING,
ZPFST TYPE STRING,
ZLISO TYPE STRING,
ZLNDX TYPE STRING,
ZREGX TYPE STRING,
ZBANK TYPE STRING,
ZBREGX TYPE STRING,
ZBISO TYPE STRING,
ZBNKL_EXT TYPE STRING,
ZBNKN_EXT TYPE STRING,
ZBCOD_EXT TYPE STRING,
ZECSIC_EXT TYPE STRING,
HWISO TYPE STRING,
SPRAS TYPE STRING,
STCEG TYPE STRING,
NAMEZ TYPE STRING,
LAND1 TYPE STRING,
LDISO TYPE STRING,
ORT1Z TYPE STRING,
ADRNR TYPE STRING,
AUST1 TYPE STRING,
AUST2 TYPE STRING,
AUST3 TYPE STRING,
AUSTO TYPE STRING,
TXTID TYPE STRING,
TXTKO TYPE STRING,
TXTFU TYPE STRING,
TXTUN TYPE STRING,
TXTAB TYPE STRING,
SF_HEADER TYPE STRING,
SF_FOOTER TYPE STRING,
SF_SENDER TYPE STRING,
SF_GREETG TYPE STRING,
URL_LOGO TYPE STRING,
URL_GRAPH TYPE STRING,
UBNKA TYPE STRING,
UBSTR TYPE STRING,
UBORT TYPE STRING,
UBNKS TYPE STRING,
UBISO TYPE STRING,
UBNKY TYPE STRING,
UBNKL TYPE STRING,
UBKNT TYPE STRING,
UBKON TYPE STRING,
UIBAN TYPE STRING,
UBNKL_EXT TYPE STRING,
UBKNT_EXT TYPE STRING,
UBCOD_EXT TYPE STRING,
UECSIC_EXT TYPE STRING,
UBWAE TYPE STRING,
USWIF TYPE STRING,
UBREG TYPE STRING,
UBREGX TYPE STRING,
UBANK TYPE STRING,
UBRCH TYPE STRING,
UBTEL TYPE STRING,
UBNAM TYPE STRING,
UBSPR TYPE STRING,
XPGRO TYPE STRING,
DTVTA TYPE STRING,
DTELZ TYPE STRING,
DTGLZ TYPE STRING,
DTGBK TYPE STRING,
DTGIS TYPE STRING,
DTFIN TYPE STRING,
DTBID TYPE STRING,
DTKID TYPE STRING,
DTAID TYPE STRING,
BNKL1_EXT TYPE STRING,
BNKN1_EXT TYPE STRING,
BCOD1_EXT TYPE STRING,
BECSIC1_EXT TYPE STRING,
BNKL2_EXT TYPE STRING,
BNKN2_EXT TYPE STRING,
BCOD2_EXT TYPE STRING,
BECSIC2_EXT TYPE STRING,
BNKL3_EXT TYPE STRING,
BNKN3_EXT TYPE STRING,
BCOD3_EXT TYPE STRING,
BECSIC3_EXT TYPE STRING,
DTKVS TYPE STRING,
DTZUS TYPE STRING,
DTKZA TYPE STRING,
DTURG TYPE STRING,
APPLICATION_AREA TYPE STRING,
TEXT1 TYPE STRING,
CODE1 TYPE STRING,
ADD_INFO1 TYPE STRING,
TEXT2 TYPE STRING,
CODE2 TYPE STRING,
ADD_INFO2 TYPE STRING,
TEXT3 TYPE STRING,
CODE3 TYPE STRING,
ADD_INFO3 TYPE STRING,
TEXT4 TYPE STRING,
CODE4 TYPE STRING,
ADD_INFO4 TYPE STRING,
SND_CTRY_CODE TYPE STRING,
REC_CTRY_CODE TYPE STRING,
WAERS TYPE STRING,
XKDFB TYPE STRING,
OVBLN TYPE STRING,
INSTRID TYPE STRING,
XEINZ TYPE STRING,
XSCHK TYPE STRING,
XPGIR TYPE STRING,
XEURO TYPE STRING,
XEZER TYPE STRING,
ZFORN TYPE STRING,
WFORN TYPE STRING,
AFORN TYPE STRING,
PDFFO TYPE STRING,
PDFWF TYPE STRING,
PDFAF TYPE STRING,
FORMI TYPE STRING,
FORMZ TYPE STRING,
PREFTYP TYPE STRING,
RENUM TYPE STRING,
CHECK TYPE STRING,
XFINAL TYPE STRING,
TREE_ID TYPE STRING,
CURNO TYPE STRING,
REF01 TYPE STRING,
REF02 TYPE STRING,
REF03 TYPE STRING,
REF04 TYPE STRING,
REF05 TYPE STRING,
REF06 TYPE STRING,
REF07 TYPE STRING,
REF08 TYPE STRING,
REF09 TYPE STRING,
REF10 TYPE STRING,
REF11 TYPE STRING,
REF12 TYPE STRING,
REF13 TYPE STRING,
REF14 TYPE STRING,
REF15 TYPE STRING,
ZREF01 TYPE STRING,
ZREF02 TYPE STRING,
ZREF03 TYPE STRING,
ZREF04 TYPE STRING,
ZREF05 TYPE STRING,
ZREF06 TYPE STRING,
ZREF07 TYPE STRING,
ZREF08 TYPE STRING,
ZREF09 TYPE STRING,
ZREF10 TYPE STRING,
MNDID TYPE STRING,
SIGN_DATE TYPE STRING,
B2B TYPE STRING,
REC_CRDID TYPE STRING,
SEQ_TYPE TYPE STRING,
INST_CODE TYPE STRING,
AMEND_IND TYPE STRING,
ORIG_MNDID TYPE STRING,
ORIG_REC_CRDID TYPE STRING,
ORIG_REC_NAME1 TYPE STRING,
ORIG_REC_NAME2 TYPE STRING,
ORIG_IBAN TYPE STRING,
ORIG_BIC TYPE STRING,
SND_DEBTOR_ID TYPE STRING,END OF T_EKKO_STR. DATA: WA_FPAYHX_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_FPAYHX_STR-ZNM1S sy-vline
WA_FPAYHX_STR-ZNM2S sy-vline
WA_FPAYHX_STR-ZPLOR sy-vline
WA_FPAYHX_STR-ZPFST sy-vline
WA_FPAYHX_STR-ZLISO sy-vline
WA_FPAYHX_STR-ZLNDX sy-vline
WA_FPAYHX_STR-ZREGX sy-vline
WA_FPAYHX_STR-ZBANK sy-vline
WA_FPAYHX_STR-ZBREGX sy-vline
WA_FPAYHX_STR-ZBISO sy-vline
WA_FPAYHX_STR-ZBNKL_EXT sy-vline
WA_FPAYHX_STR-ZBNKN_EXT sy-vline
WA_FPAYHX_STR-ZBCOD_EXT sy-vline
WA_FPAYHX_STR-ZECSIC_EXT sy-vline
WA_FPAYHX_STR-HWISO sy-vline
WA_FPAYHX_STR-SPRAS sy-vline
WA_FPAYHX_STR-STCEG sy-vline
WA_FPAYHX_STR-NAMEZ sy-vline
WA_FPAYHX_STR-LAND1 sy-vline
WA_FPAYHX_STR-LDISO sy-vline
WA_FPAYHX_STR-ORT1Z sy-vline
WA_FPAYHX_STR-ADRNR sy-vline
WA_FPAYHX_STR-AUST1 sy-vline
WA_FPAYHX_STR-AUST2 sy-vline
WA_FPAYHX_STR-AUST3 sy-vline
WA_FPAYHX_STR-AUSTO sy-vline
WA_FPAYHX_STR-TXTID sy-vline
WA_FPAYHX_STR-TXTKO sy-vline
WA_FPAYHX_STR-TXTFU sy-vline
WA_FPAYHX_STR-TXTUN sy-vline
WA_FPAYHX_STR-TXTAB sy-vline
WA_FPAYHX_STR-SF_HEADER sy-vline
WA_FPAYHX_STR-SF_FOOTER sy-vline
WA_FPAYHX_STR-SF_SENDER sy-vline
WA_FPAYHX_STR-SF_GREETG sy-vline
WA_FPAYHX_STR-URL_LOGO sy-vline
WA_FPAYHX_STR-URL_GRAPH sy-vline
WA_FPAYHX_STR-UBNKA sy-vline
WA_FPAYHX_STR-UBSTR sy-vline
WA_FPAYHX_STR-UBORT sy-vline
WA_FPAYHX_STR-UBNKS sy-vline
WA_FPAYHX_STR-UBISO sy-vline
WA_FPAYHX_STR-UBNKY sy-vline
WA_FPAYHX_STR-UBNKL sy-vline
WA_FPAYHX_STR-UBKNT sy-vline
WA_FPAYHX_STR-UBKON sy-vline
WA_FPAYHX_STR-UIBAN sy-vline
WA_FPAYHX_STR-UBNKL_EXT sy-vline
WA_FPAYHX_STR-UBKNT_EXT sy-vline
WA_FPAYHX_STR-UBCOD_EXT sy-vline
WA_FPAYHX_STR-UECSIC_EXT sy-vline
WA_FPAYHX_STR-UBWAE sy-vline
WA_FPAYHX_STR-USWIF sy-vline
WA_FPAYHX_STR-UBREG sy-vline
WA_FPAYHX_STR-UBREGX sy-vline
WA_FPAYHX_STR-UBANK sy-vline
WA_FPAYHX_STR-UBRCH sy-vline
WA_FPAYHX_STR-UBTEL sy-vline
WA_FPAYHX_STR-UBNAM sy-vline
WA_FPAYHX_STR-UBSPR sy-vline
WA_FPAYHX_STR-XPGRO sy-vline
WA_FPAYHX_STR-DTVTA sy-vline
WA_FPAYHX_STR-DTELZ sy-vline
WA_FPAYHX_STR-DTGLZ sy-vline
WA_FPAYHX_STR-DTGBK sy-vline
WA_FPAYHX_STR-DTGIS sy-vline
WA_FPAYHX_STR-DTFIN sy-vline
WA_FPAYHX_STR-DTBID sy-vline
WA_FPAYHX_STR-DTKID sy-vline
WA_FPAYHX_STR-DTAID sy-vline
WA_FPAYHX_STR-BNKL1_EXT sy-vline
WA_FPAYHX_STR-BNKN1_EXT sy-vline
WA_FPAYHX_STR-BCOD1_EXT sy-vline
WA_FPAYHX_STR-BECSIC1_EXT sy-vline
WA_FPAYHX_STR-BNKL2_EXT sy-vline
WA_FPAYHX_STR-BNKN2_EXT sy-vline
WA_FPAYHX_STR-BCOD2_EXT sy-vline
WA_FPAYHX_STR-BECSIC2_EXT sy-vline
WA_FPAYHX_STR-BNKL3_EXT sy-vline
WA_FPAYHX_STR-BNKN3_EXT sy-vline
WA_FPAYHX_STR-BCOD3_EXT sy-vline
WA_FPAYHX_STR-BECSIC3_EXT sy-vline
WA_FPAYHX_STR-DTKVS sy-vline
WA_FPAYHX_STR-DTZUS sy-vline
WA_FPAYHX_STR-DTKZA sy-vline
WA_FPAYHX_STR-DTURG sy-vline
WA_FPAYHX_STR-APPLICATION_AREA sy-vline
WA_FPAYHX_STR-TEXT1 sy-vline
WA_FPAYHX_STR-CODE1 sy-vline
WA_FPAYHX_STR-ADD_INFO1 sy-vline
WA_FPAYHX_STR-TEXT2 sy-vline
WA_FPAYHX_STR-CODE2 sy-vline
WA_FPAYHX_STR-ADD_INFO2 sy-vline
WA_FPAYHX_STR-TEXT3 sy-vline
WA_FPAYHX_STR-CODE3 sy-vline
WA_FPAYHX_STR-ADD_INFO3 sy-vline
WA_FPAYHX_STR-TEXT4 sy-vline
WA_FPAYHX_STR-CODE4 sy-vline
WA_FPAYHX_STR-ADD_INFO4 sy-vline
WA_FPAYHX_STR-SND_CTRY_CODE sy-vline
WA_FPAYHX_STR-REC_CTRY_CODE sy-vline
WA_FPAYHX_STR-WAERS sy-vline
WA_FPAYHX_STR-XKDFB sy-vline
WA_FPAYHX_STR-OVBLN sy-vline
WA_FPAYHX_STR-INSTRID sy-vline
WA_FPAYHX_STR-XEINZ sy-vline
WA_FPAYHX_STR-XSCHK sy-vline
WA_FPAYHX_STR-XPGIR sy-vline
WA_FPAYHX_STR-XEURO sy-vline
WA_FPAYHX_STR-XEZER sy-vline
WA_FPAYHX_STR-ZFORN sy-vline
WA_FPAYHX_STR-WFORN sy-vline
WA_FPAYHX_STR-AFORN sy-vline
WA_FPAYHX_STR-PDFFO sy-vline
WA_FPAYHX_STR-PDFWF sy-vline
WA_FPAYHX_STR-PDFAF sy-vline
WA_FPAYHX_STR-FORMI sy-vline
WA_FPAYHX_STR-FORMZ sy-vline
WA_FPAYHX_STR-PREFTYP sy-vline
WA_FPAYHX_STR-RENUM sy-vline
WA_FPAYHX_STR-CHECK sy-vline
WA_FPAYHX_STR-XFINAL sy-vline
WA_FPAYHX_STR-TREE_ID sy-vline
WA_FPAYHX_STR-CURNO sy-vline
WA_FPAYHX_STR-REF01 sy-vline
WA_FPAYHX_STR-REF02 sy-vline
WA_FPAYHX_STR-REF03 sy-vline
WA_FPAYHX_STR-REF04 sy-vline
WA_FPAYHX_STR-REF05 sy-vline
WA_FPAYHX_STR-REF06 sy-vline
WA_FPAYHX_STR-REF07 sy-vline
WA_FPAYHX_STR-REF08 sy-vline
WA_FPAYHX_STR-REF09 sy-vline
WA_FPAYHX_STR-REF10 sy-vline
WA_FPAYHX_STR-REF11 sy-vline
WA_FPAYHX_STR-REF12 sy-vline
WA_FPAYHX_STR-REF13 sy-vline
WA_FPAYHX_STR-REF14 sy-vline
WA_FPAYHX_STR-REF15 sy-vline
WA_FPAYHX_STR-ZREF01 sy-vline
WA_FPAYHX_STR-ZREF02 sy-vline
WA_FPAYHX_STR-ZREF03 sy-vline
WA_FPAYHX_STR-ZREF04 sy-vline
WA_FPAYHX_STR-ZREF05 sy-vline
WA_FPAYHX_STR-ZREF06 sy-vline
WA_FPAYHX_STR-ZREF07 sy-vline
WA_FPAYHX_STR-ZREF08 sy-vline
WA_FPAYHX_STR-ZREF09 sy-vline
WA_FPAYHX_STR-ZREF10 sy-vline
WA_FPAYHX_STR-MNDID sy-vline
WA_FPAYHX_STR-SIGN_DATE sy-vline
WA_FPAYHX_STR-B2B sy-vline
WA_FPAYHX_STR-REC_CRDID sy-vline
WA_FPAYHX_STR-SEQ_TYPE sy-vline
WA_FPAYHX_STR-INST_CODE sy-vline
WA_FPAYHX_STR-AMEND_IND sy-vline
WA_FPAYHX_STR-ORIG_MNDID sy-vline
WA_FPAYHX_STR-ORIG_REC_CRDID sy-vline
WA_FPAYHX_STR-ORIG_REC_NAME1 sy-vline
WA_FPAYHX_STR-ORIG_REC_NAME2 sy-vline
WA_FPAYHX_STR-ORIG_IBAN sy-vline
WA_FPAYHX_STR-ORIG_BIC sy-vline
WA_FPAYHX_STR-SND_DEBTOR_ID sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.