ABAP Select data from SAP table FMFG_S_CCRDISPLAY 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 FMFG_S_CCRDISPLAY 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 FMFG_S_CCRDISPLAY. 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 FMFG_S_CCRDISPLAY 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_FMFG_S_CCRDISPLAY TYPE STANDARD TABLE OF FMFG_S_CCRDISPLAY,
      WA_FMFG_S_CCRDISPLAY TYPE FMFG_S_CCRDISPLAY,
      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: <FMFG_S_CCRDISPLAY> TYPE FMFG_S_CCRDISPLAY.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM FMFG_S_CCRDISPLAY
*  INTO TABLE @DATA(IT_FMFG_S_CCRDISPLAY2).
*--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_FMFG_S_CCRDISPLAY INDEX 1 INTO DATA(WA_FMFG_S_CCRDISPLAY2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_FMFG_S_CCRDISPLAY ASSIGNING <FMFG_S_CCRDISPLAY>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<FMFG_S_CCRDISPLAY>-MANDT = 1.
<FMFG_S_CCRDISPLAY>-DUNS = 1.
<FMFG_S_CCRDISPLAY>-DUNS4 = 1.
<FMFG_S_CCRDISPLAY>-CAGE = 1.
<FMFG_S_CCRDISPLAY>-EXCODE = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_FMFG_S_CCRDISPLAY-REGDATE, sy-vline,
WA_FMFG_S_CCRDISPLAY-RENDATE, sy-vline,
WA_FMFG_S_CCRDISPLAY-BUSNAME, sy-vline,
WA_FMFG_S_CCRDISPLAY-DBANAME, sy-vline,
WA_FMFG_S_CCRDISPLAY-COMPDIV, sy-vline,
WA_FMFG_S_CCRDISPLAY-DIVNUM, sy-vline.
ENDLOOP. *Add any further fields from structure WA_FMFG_S_CCRDISPLAY 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_FMFG_S_CCRDISPLAY 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_FMFG_S_CCRDISPLAY INTO WA_FMFG_S_CCRDISPLAY. *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 ALPHA, internal->external for field LIFNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FMFG_S_CCRDISPLAY-LIFNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FMFG_S_CCRDISPLAY-LIFNR.
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_FMFG_S_CCRDISPLAY_STR,
MANDT TYPE STRING,
DUNS TYPE STRING,
DUNS4 TYPE STRING,
CAGE TYPE STRING,
EXCODE TYPE STRING,
REGDATE TYPE STRING,
RENDATE TYPE STRING,
BUSNAME TYPE STRING,
DBANAME TYPE STRING,
COMPDIV TYPE STRING,
DIVNUM TYPE STRING,
STADD1 TYPE STRING,
STADD2 TYPE STRING,
CITY TYPE STRING,
STATE TYPE STRING,
POSTAL TYPE STRING,
COUNTRY TYPE STRING,
BUSSTART TYPE STRING,
FISCEND TYPE STRING,
COSECLVL TYPE STRING,
EMSECLVL TYPE STRING,
URL TYPE STRING,
ORGTYP TYPE STRING,
STATEINC TYPE STRING,
COUNTRYINC TYPE STRING,
PARENTDUNS TYPE STRING,
BUSTYPES TYPE STRING,
BUSTYP01 TYPE STRING,
BUSTYP02 TYPE STRING,
BUSTYP03 TYPE STRING,
BUSTYP04 TYPE STRING,
BUSTYP05 TYPE STRING,
BUSTYP06 TYPE STRING,
BUSTYP07 TYPE STRING,
BUSTYP08 TYPE STRING,
BUSTYP09 TYPE STRING,
BUSTYP10 TYPE STRING,
SICCODE TYPE STRING,
SIC01 TYPE STRING,
SIC02 TYPE STRING,
SIC03 TYPE STRING,
SIC04 TYPE STRING,
SIC05 TYPE STRING,
SIC06 TYPE STRING,
SIC07 TYPE STRING,
SIC08 TYPE STRING,
SIC09 TYPE STRING,
SIC10 TYPE STRING,
SIC11 TYPE STRING,
SIC12 TYPE STRING,
SIC13 TYPE STRING,
SIC14 TYPE STRING,
SIC15 TYPE STRING,
SIC16 TYPE STRING,
SIC17 TYPE STRING,
SIC18 TYPE STRING,
SIC19 TYPE STRING,
SIC20 TYPE STRING,
NAICS TYPE STRING,
NAICS01 TYPE STRING,
NAICS02 TYPE STRING,
NAICS03 TYPE STRING,
NAICS04 TYPE STRING,
NAICS05 TYPE STRING,
NAICS06 TYPE STRING,
NAICS07 TYPE STRING,
NAICS08 TYPE STRING,
NAICS09 TYPE STRING,
NAICS10 TYPE STRING,
NAICS11 TYPE STRING,
NAICS12 TYPE STRING,
NAICS13 TYPE STRING,
NAICS14 TYPE STRING,
NAICS15 TYPE STRING,
NAICS16 TYPE STRING,
NAICS17 TYPE STRING,
NAICS18 TYPE STRING,
NAICS19 TYPE STRING,
NAICS20 TYPE STRING,
FSCCODE TYPE STRING,
FSC01 TYPE STRING,
FSC02 TYPE STRING,
FSC03 TYPE STRING,
FSC04 TYPE STRING,
FSC05 TYPE STRING,
FSC06 TYPE STRING,
FSC07 TYPE STRING,
FSC08 TYPE STRING,
FSC09 TYPE STRING,
FSC10 TYPE STRING,
PSCCODE TYPE STRING,
PSC01 TYPE STRING,
PSC02 TYPE STRING,
PSC03 TYPE STRING,
PSC04 TYPE STRING,
PSC05 TYPE STRING,
PSC06 TYPE STRING,
PSC07 TYPE STRING,
PSC08 TYPE STRING,
PSC09 TYPE STRING,
PSC10 TYPE STRING,
CREDCARD TYPE STRING,
CORRFLAG TYPE STRING,
EDI TYPE STRING,
TAXID TYPE STRING,
AVGNUMEMP TYPE STRING,
ANNUALREV TYPE STRING,
SSN TYPE STRING,
FININST TYPE STRING,
ACCNTNO TYPE STRING,
ABAROUTE TYPE STRING,
PAYTYPE TYPE STRING,
LOCKBOXNO TYPE STRING,
AUTHDATE TYPE STRING,
EFTWAIVER TYPE STRING,
ACH_US_PHONE TYPE STRING,
ACH_NUS_PHONE TYPE STRING,
ACH_FAX TYPE STRING,
ACH_EMAIL TYPE STRING,
MPIN TYPE STRING,
LIFNR TYPE STRING,END OF T_EKKO_STR. DATA: WA_FMFG_S_CCRDISPLAY_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_FMFG_S_CCRDISPLAY_STR-MANDT sy-vline
WA_FMFG_S_CCRDISPLAY_STR-DUNS sy-vline
WA_FMFG_S_CCRDISPLAY_STR-DUNS4 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-CAGE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-EXCODE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-REGDATE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-RENDATE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSNAME sy-vline
WA_FMFG_S_CCRDISPLAY_STR-DBANAME sy-vline
WA_FMFG_S_CCRDISPLAY_STR-COMPDIV sy-vline
WA_FMFG_S_CCRDISPLAY_STR-DIVNUM sy-vline
WA_FMFG_S_CCRDISPLAY_STR-STADD1 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-STADD2 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-CITY sy-vline
WA_FMFG_S_CCRDISPLAY_STR-STATE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-POSTAL sy-vline
WA_FMFG_S_CCRDISPLAY_STR-COUNTRY sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSSTART sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FISCEND sy-vline
WA_FMFG_S_CCRDISPLAY_STR-COSECLVL sy-vline
WA_FMFG_S_CCRDISPLAY_STR-EMSECLVL sy-vline
WA_FMFG_S_CCRDISPLAY_STR-URL sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ORGTYP sy-vline
WA_FMFG_S_CCRDISPLAY_STR-STATEINC sy-vline
WA_FMFG_S_CCRDISPLAY_STR-COUNTRYINC sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PARENTDUNS sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYPES sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP01 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP02 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP03 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP04 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP05 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP06 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP07 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP08 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP09 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-BUSTYP10 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SICCODE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC01 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC02 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC03 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC04 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC05 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC06 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC07 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC08 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC09 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC10 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC11 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC12 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC13 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC14 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC15 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC16 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC17 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC18 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC19 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SIC20 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS01 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS02 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS03 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS04 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS05 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS06 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS07 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS08 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS09 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS10 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS11 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS12 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS13 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS14 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS15 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS16 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS17 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS18 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS19 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-NAICS20 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSCCODE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC01 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC02 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC03 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC04 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC05 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC06 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC07 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC08 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC09 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FSC10 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSCCODE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC01 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC02 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC03 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC04 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC05 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC06 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC07 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC08 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC09 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PSC10 sy-vline
WA_FMFG_S_CCRDISPLAY_STR-CREDCARD sy-vline
WA_FMFG_S_CCRDISPLAY_STR-CORRFLAG sy-vline
WA_FMFG_S_CCRDISPLAY_STR-EDI sy-vline
WA_FMFG_S_CCRDISPLAY_STR-TAXID sy-vline
WA_FMFG_S_CCRDISPLAY_STR-AVGNUMEMP sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ANNUALREV sy-vline
WA_FMFG_S_CCRDISPLAY_STR-SSN sy-vline
WA_FMFG_S_CCRDISPLAY_STR-FININST sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ACCNTNO sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ABAROUTE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-PAYTYPE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-LOCKBOXNO sy-vline
WA_FMFG_S_CCRDISPLAY_STR-AUTHDATE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-EFTWAIVER sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ACH_US_PHONE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ACH_NUS_PHONE sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ACH_FAX sy-vline
WA_FMFG_S_CCRDISPLAY_STR-ACH_EMAIL sy-vline
WA_FMFG_S_CCRDISPLAY_STR-MPIN sy-vline
WA_FMFG_S_CCRDISPLAY_STR-LIFNR sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.