🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Los archivos locales y el download de datos

ABAP Los archivos locales y el download de datos

ABAP Los archivos locales y el download de datos

Data Recording in Local Files

To store data from internal tables in our programs into files located on the PC, we will utilize the GUI_DOWNLOAD method. Let's examine some of the parameters of the method:

  • FILENAME: contains the directory and name of the file to be downloaded to the PC.
  • FILETYPE: contains the type or extension of the file being downloaded to the PC. The supported types or extensions are:
    • BIN: for binary files. Specify the file's length in the BIN_FILESIZE parameter. The internal table used must have a single field of type X.

    • ASC: for ASCII files.

    • DAT: for Excel files. Columns are separated using tabs, and lines are separated with line breaks.

    • WK1: for Excel and Lotus files.

  • WRITE_FIELD_SEPARATOR: indicates whether a file separator will be generated and, if so, what it will be.
  • DATA_TAB: stores the file's content. This table must have the same structure as the file.

This method also defines exceptions with descriptions covering each possible error during method execution. Upon code execution, a message will confirm the successful data transfer and specify the transferred byte count.

In some ABAP programs, DOWNLOAD and WS_DOWNLOAD functions may be observed. However, it is not recommended to use these functions as they are currently considered obsolete by SAP.

  • In the dialog window that appears, select the 'Pattern for ABAP Objects' option if you want to generate the structure of a class method or the 'CALL FUNCTION' option if you want to generate the structure of a function method.

  • If you wish to generate the structure of a method from the CALL_GUI_FRONTEND_SERVICES class, after selecting 'Pattern for ABAP Objects' press continue. Then, while keeping the 'METHOD CALL' option selected, insert the name of the CALL_GUI_FRONTEND_SERVICES class into the 'Class Interface' field. Press F4 to search for the needed method within the method structure field.

E.g

Input_file

21567432A23071990Jaime Gomez

31987623I15061988Jorge Gomez

27982134A02121996Angelica Ramirez

*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_JEGA_22
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_jega_22.

*--------------------------------------------------------------------*
* Data Declaration
*--------------------------------------------------------------------*
TYPES: BEGIN OF s_country_file,
country_name(20) TYPE c, "Country
country_language(20) TYPE c, "Language
END OF s_country_file.

DATA: gt_country_file TYPE STANDARD TABLE OF s_country_file,
gs_country_file LIKE LINE OF gt_country_file.

*--------------------------------------------------------------------*
* SCREEN SELECTION
*--------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK z1 WITH FRAME TITLE TEXT-001.
*Input file
PARAMETERS: p_path LIKE rlgrap-filename.
SELECTION-SCREEN END OF BLOCK z1.

*--------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
*--------------------------------------------------------------------*
* Open the file selection window
PERFORM open_file_selection_window.

*--------------------------------------------------------------------*
START-OF-SELECTION.
*--------------------------------------------------------------------*
* Load the input file
PERFORM load_input_file.

* Save the output file
PERFORM save_output_file.

*&---------------------------------------------------------------------*
*& Form OPEN_FILE_SELECTION_WINDOW
*&---------------------------------------------------------------------*
* Open the file selection window and update the input path
*--------------------------------------------------------------------*
FORM open_file_selection_window.

DATA: lt_filetable TYPE filetable,
lw_file_table TYPE file_table,
lv_rc TYPE i.

CALL METHOD cl_gui_frontend_services=>file_open_dialog
EXPORTING
default_filename = '*'
CHANGING
rc = lv_rc
file_table = lt_filetable.

READ TABLE lt_filetable INDEX 1 INTO lw_file_table.

IF sy-subrc EQ 0.
MOVE lw_file_table TO p_path.
ENDIF.

ENDFORM. " OPEN_FILE_SELECTION_WINDOW
*&---------------------------------------------------------------------*
*& Form LOAD_INPUT_FILE
*&---------------------------------------------------------------------*
* Load the input file data from the specified path
*--------------------------------------------------------------------*
FORM load_input_file.

DATA: lv_file TYPE string.

IF p_path IS INITIAL.
MESSAGE s000(z_prueba) WITH TEXT-003.
ELSE.

lv_file = p_path.

* Open the input file for reading
CALL METHOD cl_gui_frontend_services=>gui_upload
EXPORTING
filename = lv_file
filetype = 'ASC'
has_field_separator = ''
CHANGING
data_tab = gt_country_file[]
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
not_supported_by_gui = 17
error_no_gui = 18
OTHERS = 19.

IF sy-subrc NE 0.
MESSAGE e000(z_prueba) WITH TEXT-004.
ENDIF.

IF gt_country_file[] IS INITIAL.
MESSAGE s000(z_prueba) WITH TEXT-005.
ENDIF.

ENDIF.

ENDFORM. " LOAD_INPUT_FILE
*&---------------------------------------------------------------------*
*& Form SAVE_OUTPUT_FILE
*&---------------------------------------------------------------------*
* Save the data to the local file using the specified path
*--------------------------------------------------------------------*
FORM save_output_file.

* Save the data to the local file
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = 'C:UsersgatomDownloadsTestFolderoutput_file.txt'
filetype = 'ASC'
CHANGING
data_tab = gt_country_file[]
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
not_supported_by_gui = 22
error_no_gui = 23
OTHERS = 24.

IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

ENDFORM. " SAVE_OUTPUT_FILE


 

 

 


Sobre el autor

Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Jaime Eduardo Gomez Arango

Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C

✒️Autor de: 99 Publicaciones Académicas

🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Presentación:

Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.

Certificación Académica de Jaime Gomez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los archivos locales y el download de datos" de la mano de nuestros alumnos.

SAP Senior

Archivos locales: Download de datos. CL_GUI_FRONTED_SERVICES=>GUI_DOWNLOAD. Método estándar de SAP que se utiliza para grabar datos en archivos locales. En algunos programas ABAP, podemos ver que se utiliza las funciones DOWNLOAD y WS_DOWNLOAD. No es recomendable la utilización de estas funciones debido a que actualmente son consideradas objetos obsoletos por SAP. Mediante el botón modelo podemos generar las estructuras de todos los módulos de funciones o métodos pertenecientes a clases.

Acceder a esta publicación

Creado y Compartido por: Rafael Razo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Archivos locales. Download de datos. Grabación de datos en archivos locales. CL_GUI_FRONTEND_SERCICES=>GUI_DOWNLOAD. se utiliza este método para grabar datos de las tablas internas a archivos ubicados en la pc. Parámetros del método. FILENAME: Contiene el directorio y nombre del archivo a descargar de la pc. FILETYPE: Contiene el tipo o extensión del archivo que descargamos a la pc. Los tipos o extensiones admitidas son: Bin. Para archivos binarios. ASC. Para archivos ASCII. DAT. Para archivos EXCEL. WRITE_FIELD_SEPARATOR. Indica si se genera un separador de archivo o no y cual será. DATA_TAB. Aqui se almacena el contenido del archivo.

Acceder a esta publicación

Creado y Compartido por: Fabio Gallo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

GUI_DOWNLOAD Método que se utiliza para grabar datos en archivos locales FILENAME Contiene el directorio y nombre del archivo a descargar a la PC FILETYPE Contiene el tipo o extensión del archivo que descargamos a la PC Tipos de extensiones admitidas; BIN Archivos Binarios ASC Archivos ascii DAT Archivos excel WK1 Archivos excel y lotus WRITE_FIELD_SEPARATOR Indica si se generará un separador o no y cual será DATA_TAB Donde de almacena el contenido del archivo . Esta tabla debe contener la misma estructura del archivo Las Funciones DOWNLOAD Y WS_DOWNLOAD están obsoletas

Acceder a esta publicación

Creado y Compartido por: Juan Carlos Ayala Chira

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Lección: Archivos Locales: Download de datos 1) Grabación de datos en archivos locales Para grabar datos existentes en las tablas internas de nuestros programas a archivos ubicados en la PC, utilizaremos el método CL GUI FRONTEND SERVICES-GUI DOWNLOAD. Ej Analicemos algunos de los parámetros del método: FILENAME: contiene el directorio y nombre del archivo a descargar a la PC FILETYPE: contiene el tipo o extensión del archivo que descargamos a la PC Los tipos o extensiones admitidas son: - BIN: para archivos binarios. Se debe especificar la longitud del archivo en el parámetro. BIN_FILESIZE. La tabla interna que se utiliza debe tener un solo campo del tipo X - ASC: para archivos ASCII - DAT: para...

Acceder a esta publicación

Creado y Compartido por: Aida Cortina Fernandez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Archivos Locales: Download de datos Grabacion de datos en archivos locales. Para grabar datos existentes en las tablas internas de nuestros programas a archivos ubicados en la PC, utilizaremos el metodo CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD(metodo estandar que se utiliza para grabar datos en archivos locales). Analicemos algunos de los parametros del metodo: FILENAME: contiene el directorio y nombre del archivo a descargar a la PC. FILETYPE: contiene el tipo o extension del archivo que descargamos a la PC. Los tipos o extensiones admitidas son: BIN. para archivos binarios. Se debe especificar la longitud del archivo en el parametro. BIN_FILESIZE. La tabla interna que se utiliza debe tener un solo campo del tipo X. ASC.para archivos ASCII....

Acceder a esta publicación

Creado y Compartido por: Marco Antonio Vazquez Gonzalez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

ARCHIVOS LOCALES DOWNLOAD DE DATOS GUI_DOWNLOAD PARAMETROS DEL METODO FILENAME: directorio y nombre del archivo FILETYPE: contiene el tipo o extension del archivo que descargamos a la pc *BIN ARCHIVOS BINARIOS SE DEBE ESPECIFICAR LA LONGITUD DEL ARCHIVO EN EL PARAMETRO * BIN_FILESIZE LA TABLLA INTERNA QUE SE UTILIZA DEBE TENER UN SOLO CAMPO DEL TIPO X ASC: para archivos ASCII DAT: ARCHIVOS EXCEL WK1: EXCEL Y LOTUS WRITE_FIELD_SEPARATOR. indica si se genera un separador de archivo o no y cual sera. DATA_TAB: Aqui se almacena el contenido del archivo. esta tabla debe tener la misma estructuras del archivo

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Grabación de datos en archivos locales Para grabar datos existentes en las tablas internas de nuestros programas a archivos ubicados en la PC utilizaremos el método CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD. Algunos de los parametros del método son: FILENAME: Contiene el directorio y nombre del archivos a descargar a la PC. FILETYPE: contiene el tipo o extensión del archivos que descargamos a la PC. WRITE_FIELD_SEPARATOR: Indica si se generará un separador de archivo o no, y cual será. DATA_TAB: aquí se almacena el contenido del archivo. Esta tabla tiene la misma estructura del archivo. NO ES RECOMENDABLE USAR LAS FUNCIONES DOWNLOAD Y WS_DOWNLOAD, debido a que actualmente son consideradas obsoletas...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Becerra

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

GRABACION DE DATOS EN ARCHIVOS LOCALES Para grabar datos existentes en las tablas internas de nuestros programas a archivos ubicados en la PC, utilizaremos el metodo CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD FILENAME: contiene el directorio y nombre del archivo a descargar a la PC FILETYPE: contiene el tipo o extension del archivo que descargaremos a la PC esxtensiones admitidas: BIN: archivos binarios. Se debe especificar la longitud del archivo en el parametro BIN_FILESIZE. la tabla interna que se utiliza debe tener un solo campo del tipo X ASC: para archivos ASCII DAT: para archivos excel WK1: excel y lotus WRITE_FIELD_SEPARATOR: indica sio se generara un separador de archivo o no y cual sera DATA_TAB: aqui se almacena el contenido del archivo....

Acceder a esta publicación

Creado y Compartido por: Edgar Alfredo Tellez Gomez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

- Archivos Locales: Download de datos. - Grabación de datos en archivos locales CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD: Es un método que nos sirve para grabar datos de las tablas internas de nuestros programas en archivos ubicados en nuestra PC. Algunos parámetros del método son: FILENAME: Contiene el directorio y nombre del archivo a descargar en la PC. FILETYPE: Contiene el tipo o extensión del archivo que descargamos a la PC. Tipos o extensiones admitidas: BIN: Para archivos binarios. Se debe especificar la longitud del archivo en el parámetro: BIN_FILESIZE. La tabla interna que se utiliza debe tener un solo campo del tipo X. ASC: Para archivos ASCII. DAT: Para archivos excel. Las columnas son...

Acceder a esta publicación

Creado y Compartido por: Sandra Erika Bernabe Abreu

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Grabacion de datos en archivos locales para grabar datos existentes en la tablas internas de nuestros programas a archivos ubicados en la PC, utilizamos el metodo CL GUI FRONTEND SERVICES=> GUI DOWNLOAD. parametros del metodo FILENAME FILETYPE extensiones o tipos admitidos: BIN ASC DAT WK1 WRITE_FIELD_SEPARATOR indica si se genera un separador de archivo o no y cual sera DATA_TAB aqui se almacena el contenido del archivo.Esta Tabla debe tener la misma estructura del archivo.

Acceder a esta publicación

Creado y Compartido por: Luis Car

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!