ABAP Select data from SAP table /SAPSLL/CUIT_CRIT_S 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 /SAPSLL/CUIT_CRIT_S 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 /SAPSLL/CUIT_CRIT_S. 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 /SAPSLL/CUIT_CRIT_S 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_/SAPSLL/CUIT_CRIT_S TYPE STANDARD TABLE OF /SAPSLL/CUIT_CRIT_S,
      WA_/SAPSLL/CUIT_CRIT_S TYPE /SAPSLL/CUIT_CRIT_S,
      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: </SAPSLL/CUIT_CRIT_S> TYPE /SAPSLL/CUIT_CRIT_S.

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

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM /SAPSLL/CUIT_CRIT_S
  INTO TABLE IT_/SAPSLL/CUIT_CRIT_S.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM /SAPSLL/CUIT_CRIT_S
*  INTO TABLE @DATA(IT_/SAPSLL/CUIT_CRIT_S2).
*--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_/SAPSLL/CUIT_CRIT_S INDEX 1 INTO DATA(WA_/SAPSLL/CUIT_CRIT_S2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_/SAPSLL/CUIT_CRIT_S ASSIGNING </SAPSLL/CUIT_CRIT_S>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
</SAPSLL/CUIT_CRIT_S>-MANDT = 1.
</SAPSLL/CUIT_CRIT_S>-GUID_CUIT = 1.
</SAPSLL/CUIT_CRIT_S>-ERNAM = 1.
</SAPSLL/CUIT_CRIT_S>-CRTSP = 1.
</SAPSLL/CUIT_CRIT_S>-AENAM = 1.
ENDLOOP.

LOOP AT IT_/SAPSLL/CUIT_CRIT_S INTO WA_/SAPSLL/CUIT_CRIT_S.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_/SAPSLL/CUIT_CRIT_S-CHTSP, sy-vline,
WA_/SAPSLL/CUIT_CRIT_S-GUID_CUHD, sy-vline,
WA_/SAPSLL/CUIT_CRIT_S-ITVSY, sy-vline,
WA_/SAPSLL/CUIT_CRIT_S-CUITA, sy-vline,
WA_/SAPSLL/CUIT_CRIT_S-GUID_FTVBS, sy-vline,
WA_/SAPSLL/CUIT_CRIT_S-ITLEG, sy-vline.
ENDLOOP. *Add any further fields from structure WA_/SAPSLL/CUIT_CRIT_S 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_/SAPSLL/CUIT_CRIT_S 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_/SAPSLL/CUIT_CRIT_S INTO WA_/SAPSLL/CUIT_CRIT_S. *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.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_/SAPSLL/CUIT_CRIT_S_STR,
MANDT TYPE STRING,
GUID_CUIT TYPE STRING,
ERNAM TYPE STRING,
CRTSP TYPE STRING,
AENAM TYPE STRING,
CHTSP TYPE STRING,
GUID_CUHD TYPE STRING,
ITVSY TYPE STRING,
CUITA TYPE STRING,
GUID_FTVBS TYPE STRING,
ITLEG TYPE STRING,
ITREC TYPE STRING,
CTYPL TYPE STRING,
CTYDP TYPE STRING,
CTYAR TYPE STRING,
CTYIV TYPE STRING,
CTYTR TYPE STRING,
GUID_PR TYPE STRING,
PRBUM TYPE STRING,
DOCUM TYPE STRING,
CVQDP_FLT TYPE STRING,
CUCOO TYPE STRING,
CUROO TYPE STRING,
DOCUR TYPE STRING,
RPTDT TYPE STRING,
NETVAL_FLT TYPE STRING,
NTCUR TYPE STRING,
GROVAL_FLT TYPE STRING,
GRCUR TYPE STRING,
TAXVAL_FLT TYPE STRING,
TXCUR TYPE STRING,
QUANT_FLT TYPE STRING,
QUAUM TYPE STRING,
WEINET_FLT TYPE STRING,
WEIGRO_FLT TYPE STRING,
WEIDIM TYPE STRING,
INCOT TYPE STRING,
INCOL TYPE STRING,
FRCHG TYPE STRING,
EXART TYPE STRING,
AUART TYPE STRING,
DCTYP TYPE STRING,
FLCNF TYPE STRING,
CCNGA TYPE STRING,
ITSTA TYPE STRING,
ITREF TYPE STRING,
CRECO TYPE STRING,
SVMEB TYPE STRING,
SVMEA TYPE STRING,
SVMEX TYPE STRING,
SVMEE TYPE STRING,
SVMCO TYPE STRING,
SGICD TYPE STRING,
SGIQU_FLT TYPE STRING,
GUID_CUIV TYPE STRING,
ITNEX TYPE STRING,
GUID_BOPHD TYPE STRING,
PRMET TYPE STRING,
EPVAL_FLT TYPE STRING,
CPVAL_FLT TYPE STRING,
PRCUR TYPE STRING,
PRECD TYPE STRING,
PREFL TYPE STRING,
ADDDA1 TYPE STRING,
ADDDA2 TYPE STRING,
ADDDA3 TYPE STRING,
SUPGA TYPE STRING,
SUPGB TYPE STRING,
RRATEDIM_FLT TYPE STRING,
RRATEUM TYPE STRING,
RRATEAMNT_FLT TYPE STRING,
RRATECU TYPE STRING,
IVMST TYPE STRING,
PRDES TYPE STRING,
PRSRC TYPE STRING,
ECPID TYPE STRING,
CUFIS TYPE STRING,
IVMIT TYPE STRING,
ZTERM TYPE STRING,
IVMRE TYPE STRING,
QUABU_FLT TYPE STRING,
IZUAB TYPE STRING,
NORDES TYPE STRING,
IBLIS TYPE STRING,
IKMAT TYPE STRING,
IDGDS TYPE STRING,
LOCID TYPE STRING,
ENDUSE TYPE STRING,
ADDDA0 TYPE STRING,
OPREL TYPE STRING,
ECPID_OP TYPE STRING,
IDGDSP TYPE STRING,
IVMST_OP TYPE STRING,
STDEX TYPE STRING,
ORGVS TYPE STRING,
BPTVS TYPE STRING,
PRONR TYPE STRING,
SCPREL TYPE STRING,
IVMST_SCP TYPE STRING,
GUID_REFPR TYPE STRING,
CUSWEI TYPE STRING,
BOMID TYPE STRING,
ITMMN TYPE STRING,
LCLPR TYPE STRING,
IVMST_FCP TYPE STRING,
FCPREL TYPE STRING,
FLMVQ TYPE STRING,END OF T_EKKO_STR. DATA: WA_/SAPSLL/CUIT_CRIT_S_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_/SAPSLL/CUIT_CRIT_S_STR-MANDT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_CUIT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ERNAM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CRTSP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-AENAM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CHTSP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_CUHD sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITVSY sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CUITA sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_FTVBS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITLEG sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITREC sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CTYPL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CTYDP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CTYAR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CTYIV sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CTYTR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_PR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRBUM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-DOCUM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CVQDP_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CUCOO sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CUROO sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-DOCUR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-RPTDT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-NETVAL_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-NTCUR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GROVAL_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GRCUR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-TAXVAL_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-TXCUR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-QUANT_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-QUAUM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-WEINET_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-WEIGRO_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-WEIDIM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-INCOT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-INCOL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-FRCHG sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-EXART sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-AUART sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-DCTYP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-FLCNF sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CCNGA sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITSTA sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITREF sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CRECO sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SVMEB sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SVMEA sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SVMEX sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SVMEE sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SVMCO sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SGICD sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SGIQU_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_CUIV sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITNEX sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_BOPHD sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRMET sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-EPVAL_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CPVAL_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRCUR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRECD sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PREFL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ADDDA1 sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ADDDA2 sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ADDDA3 sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SUPGA sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SUPGB sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-RRATEDIM_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-RRATEUM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-RRATEAMNT_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-RRATECU sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMST sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRDES sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRSRC sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ECPID sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CUFIS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMIT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ZTERM sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMRE sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-QUABU_FLT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IZUAB sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-NORDES sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IBLIS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IKMAT sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IDGDS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-LOCID sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ENDUSE sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ADDDA0 sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-OPREL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ECPID_OP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IDGDSP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMST_OP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-STDEX sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ORGVS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-BPTVS sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-PRONR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-SCPREL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMST_SCP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-GUID_REFPR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-CUSWEI sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-BOMID sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-ITMMN sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-LCLPR sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-IVMST_FCP sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-FCPREL sy-vline
WA_/SAPSLL/CUIT_CRIT_S_STR-FLMVQ sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.