Inicio > Reports > Carga de ficheros desde excel

Carga de ficheros desde excel

Una de las tareas básicas de programación consiste en la carga de ficheros a SAP, ya sea desde txt o desde excel.

Para realizar dicha carga se han utilizado primero el método “file_open_dialog” de la clase cl_gui_frontend_services y posteriormente la transformación de datos excel con la función  ‘TEXT_CONVERT_XLS_TO_SAP”

El siguiente ejemplo realiza la carga de un fichero excel.

La estructura de carga es:  MANDT | BUKRS | BELNR | GJAHR | BLART

El código del programa es:

report  zcarga_excel.

” Upload Data from Excel File in ABAP using TEXT_CONVERT_XLS_TO_SAP
type-pools : truxs.

types :
begin of gty_docs,
mandt type sy-mandt,
bukrs type bkpf-bukrs,
belnr type bkpf-belnr,
gjahr type bkpf-gjahr,
blart type bkpf-blart,
end of gty_docs.

data :
g_raw_data type truxs_t_text_data,
gs_docs type gty_docs,
gt_docs type table of gty_docs.

selection-screen begin of block block-1 with frame title text-001.

parameters : pa_file like rlgrap-filename default ‘C:\prueba_salva.xls’.
” or CFFILE-FILENAME

selection-screen end of block block-1.

at selection-screen on value-request for pa_file.
perform u_selectfile using pa_file.

start-of-selection.

perform u_uploadexceldata.
perform u_displayinternaltabledata.

end-of-selection.

*&———————————————————————*
*& Form U_SELECTFILE
*&———————————————————————*
* text
*———————————————————————-*
* –>P_PA_FILE text
*———————————————————————-*
form u_selectfile using p_pa_file type localfile.

data :
lv_subrc like sy-subrc,
lt_it_tab type filetable.

call method cl_gui_frontend_services=>file_open_dialog
exporting
window_title = ‘Selección de fichero excel’
default_filename = ‘*.xls’
multiselection = ‘ ‘
changing
file_table = lt_it_tab
rc = lv_subrc.

” Write path on input area
loop at lt_it_tab into p_pa_file.
endloop.

endform. ” U_SELECTFILE

*&———————————————————————*
*& Form U_UPLOADEXCELDATA
*&———————————————————————*
* text
*———————————————————————-*
form u_uploadexceldata .

call function ‘TEXT_CONVERT_XLS_TO_SAP’
exporting
i_line_header = ‘X’
i_tab_raw_data = g_raw_data
i_filename = pa_file
tables
i_tab_converted_data = gt_docs[] ” Data
exceptions
conversion_failed = 1
others = 2.

endform. ” U_UPLOADEXCELDATA

*&———————————————————————*
*& Form U_DISPLAYINTERNALTABLEDATA
*&———————————————————————*
* text
*———————————————————————-*
form u_displayinternaltabledata .

write : /
‘ Mandt’,
13 ‘Sociedad’,
23 ‘Documento’,
34 ‘Año’,
41 ‘Clase documento’.

loop at gt_docs into gs_docs.
write : /
gs_docs-mandt,
13 gs_docs-bukrs,
23 gs_docs-belnr,
34 gs_docs-gjahr,
41 gs_docs-blart.
endloop.

endform. ” U_DISPLAYINTERNALTABLEDATA

  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: