ABAP Select data from SAP table PES_FORM_COINEM_PE_197 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 PES_FORM_COINEM_PE_197 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 PES_FORM_COINEM_PE_197. 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 PES_FORM_COINEM_PE_197 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_PES_FORM_COINEM_PE_197 TYPE STANDARD TABLE OF PES_FORM_COINEM_PE_197,
      WA_PES_FORM_COINEM_PE_197 TYPE PES_FORM_COINEM_PE_197,
      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: <PES_FORM_COINEM_PE_197> TYPE PES_FORM_COINEM_PE_197.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PES_FORM_COINEM_PE_197
*  INTO TABLE @DATA(IT_PES_FORM_COINEM_PE_1972).
*--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_PES_FORM_COINEM_PE_197 INDEX 1 INTO DATA(WA_PES_FORM_COINEM_PE_1972).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PES_FORM_COINEM_PE_197 ASSIGNING <PES_FORM_COINEM_PE_197>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PES_FORM_COINEM_PE_197>-EMPRESA = 1.
<PES_FORM_COINEM_PE_197>-NIF = 1.
<PES_FORM_COINEM_PE_197>-DODONA = 1.
<PES_FORM_COINEM_PE_197>-NIF_DODONA = 1.
<PES_FORM_COINEM_PE_197>-CONCEPTO = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PES_FORM_COINEM_PE_197-RAZONSOC, sy-vline,
WA_PES_FORM_COINEM_PE_197-DOMICSOC, sy-vline,
WA_PES_FORM_COINEM_PE_197-PAIS_EMP, sy-vline,
WA_PES_FORM_COINEM_PE_197-DIGITO1, sy-vline,
WA_PES_FORM_COINEM_PE_197-DIGITO2, sy-vline,
WA_PES_FORM_COINEM_PE_197-DIGITO3, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PES_FORM_COINEM_PE_197 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_PES_FORM_COINEM_PE_197 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_PES_FORM_COINEM_PE_197 INTO WA_PES_FORM_COINEM_PE_197. *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_PES_FORM_COINEM_PE_197_STR,
EMPRESA TYPE STRING,
NIF TYPE STRING,
DODONA TYPE STRING,
NIF_DODONA TYPE STRING,
CONCEPTO TYPE STRING,
RAZONSOC TYPE STRING,
DOMICSOC TYPE STRING,
PAIS_EMP TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
MUNICIPIO_EMP TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
DIGITO4 TYPE STRING,
DIGITO5 TYPE STRING,
CODPOS_EMP TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
DIGITO4 TYPE STRING,
DIGITO5 TYPE STRING,
TRABAJADOR TYPE STRING,
DODONA TYPE STRING,
NIF TYPE STRING,
PASAPORTE TYPE STRING,
FECNAC TYPE STRING,
NAF TYPE STRING,
NIVFORM_T TYPE STRING,
NIVFORM TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
NACIONALIDAD TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
MUNICIPIO_TRA TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
DIGITO4 TYPE STRING,
DIGITO5 TYPE STRING,
PAIS_DOMICILIO TYPE STRING,
DIGITO1 TYPE STRING,
DIGITO2 TYPE STRING,
DIGITO3 TYPE STRING,
CONTRATO TYPE STRING,
DECL_CONTR_REL TYPE STRING,
DESEMPLEADO TYPE STRING,
SERVICIODESEMP1 TYPE STRING,
SERVICIODESEMP2 TYPE STRING,
CONTR_DETERM TYPE STRING,
SERVICIO1 TYPE STRING,
NROCONTR1 TYPE STRING,
FECHA1 TYPE STRING,
DODONA TYPE STRING,
FECNAC TYPE STRING,
UBICACION1 TYPE STRING,
UBICACION2 TYPE STRING,
PROFESION TYPE STRING,
CATEGORIA TYPE STRING,
PORC_REDUC TYPE STRING,
CON TYPE STRING,
HASTA TYPE STRING,
SERVICIO2 TYPE STRING,
NROCONTR2 TYPE STRING,
FECHA2 TYPE STRING,
CLAUSULAS TYPE STRING,
PUESTO TYPE STRING,
PROFESION TYPE STRING,
CATEGORIA TYPE STRING,
UBICACION1 TYPE STRING,
UBICACION2 TYPE STRING,
CENTRO_ESP_EMPLEO TYPE STRING,
PECULIARIDADES TYPE STRING,
BAJO_RENDM_SI TYPE STRING,
BAJO_RENDM_NO TYPE STRING,
ACTIVIDAD1 TYPE STRING,
ACTIVIDAD2 TYPE STRING,
ACTIVIDAD_CICLICA TYPE STRING,
DURACION_ACTCICL1 TYPE STRING,
DURACION_ACTCICL2 TYPE STRING,
FECHA_INICIO TYPE STRING,
DURACION_ACTTRBJ TYPE STRING,
DESCRIP_CONVENIO TYPE STRING,
JORNADA TYPE STRING,
UNIDAD TYPE STRING,
DISTR_HORARIA_DE TYPE STRING,
DISTR_HORARIA_A TYPE STRING,
PARCIAL_SI TYPE STRING,
PARCIAL_NO TYPE STRING,
TIEMPOCOMP TYPE STRING,
COMPHORAS TYPE STRING,
DE TYPE STRING,
A TYPE STRING,
TIEMPOPARC TYPE STRING,
PARCHORAS TYPE STRING,
PARCDIA TYPE STRING,
PARCSEMANA TYPE STRING,
PARCMES TYPE STRING,
PARCANIO TYPE STRING,
COMPARABLE TYPE STRING,
CONVENIO TYPE STRING,
JORNMAXIMA TYPE STRING,
MAXIMAHORAS TYPE STRING,
HORASCOMPL_SI TYPE STRING,
HORASCOMPL_NO TYPE STRING,
DISTRIBUCION1 TYPE STRING,
DISTRIBUCION2 TYPE STRING,
REPFECCIER_SI TYPE STRING,
REPFECCIER_NO TYPE STRING,
FIRMA TYPE STRING,
EN TYPE STRING,
A TYPE STRING,
DE TYPE STRING,
DE20 TYPE STRING,
ANIO_DE TYPE STRING,END OF T_EKKO_STR. DATA: WA_PES_FORM_COINEM_PE_197_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_PES_FORM_COINEM_PE_197_STR-EMPRESA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NIF sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DODONA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NIF_DODONA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CONCEPTO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-RAZONSOC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DOMICSOC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PAIS_EMP sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-MUNICIPIO_EMP sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO4 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO5 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CODPOS_EMP sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO4 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO5 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-TRABAJADOR sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DODONA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NIF sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PASAPORTE sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FECNAC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NAF sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NIVFORM_T sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NIVFORM sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NACIONALIDAD sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-MUNICIPIO_TRA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO4 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO5 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PAIS_DOMICILIO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DIGITO3 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CONTRATO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DECL_CONTR_REL sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DESEMPLEADO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-SERVICIODESEMP1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-SERVICIODESEMP2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CONTR_DETERM sy-vline
WA_PES_FORM_COINEM_PE_197_STR-SERVICIO1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NROCONTR1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FECHA1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DODONA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FECNAC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-UBICACION1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-UBICACION2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PROFESION sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CATEGORIA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PORC_REDUC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CON sy-vline
WA_PES_FORM_COINEM_PE_197_STR-HASTA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-SERVICIO2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-NROCONTR2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FECHA2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CLAUSULAS sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PUESTO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PROFESION sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CATEGORIA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-UBICACION1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-UBICACION2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CENTRO_ESP_EMPLEO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PECULIARIDADES sy-vline
WA_PES_FORM_COINEM_PE_197_STR-BAJO_RENDM_SI sy-vline
WA_PES_FORM_COINEM_PE_197_STR-BAJO_RENDM_NO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-ACTIVIDAD1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-ACTIVIDAD2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-ACTIVIDAD_CICLICA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DURACION_ACTCICL1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DURACION_ACTCICL2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FECHA_INICIO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DURACION_ACTTRBJ sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DESCRIP_CONVENIO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-JORNADA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-UNIDAD sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DISTR_HORARIA_DE sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DISTR_HORARIA_A sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCIAL_SI sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCIAL_NO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-TIEMPOCOMP sy-vline
WA_PES_FORM_COINEM_PE_197_STR-COMPHORAS sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DE sy-vline
WA_PES_FORM_COINEM_PE_197_STR-A sy-vline
WA_PES_FORM_COINEM_PE_197_STR-TIEMPOPARC sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCHORAS sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCDIA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCSEMANA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCMES sy-vline
WA_PES_FORM_COINEM_PE_197_STR-PARCANIO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-COMPARABLE sy-vline
WA_PES_FORM_COINEM_PE_197_STR-CONVENIO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-JORNMAXIMA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-MAXIMAHORAS sy-vline
WA_PES_FORM_COINEM_PE_197_STR-HORASCOMPL_SI sy-vline
WA_PES_FORM_COINEM_PE_197_STR-HORASCOMPL_NO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DISTRIBUCION1 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DISTRIBUCION2 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-REPFECCIER_SI sy-vline
WA_PES_FORM_COINEM_PE_197_STR-REPFECCIER_NO sy-vline
WA_PES_FORM_COINEM_PE_197_STR-FIRMA sy-vline
WA_PES_FORM_COINEM_PE_197_STR-EN sy-vline
WA_PES_FORM_COINEM_PE_197_STR-A sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DE sy-vline
WA_PES_FORM_COINEM_PE_197_STR-DE20 sy-vline
WA_PES_FORM_COINEM_PE_197_STR-ANIO_DE sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.