¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

¿Cómo convertir archivos de tipo doc, pdf o texto a formato binario? ¡Descubre la solución aquí!

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 4 Vistas
0
Cargando...

Hola,

¿Estás al tanto de alguna función o método que tome como entrada un archivo de tipo doc, pdf o archivos de texto y lo convierta a formato binario? Por favor, házmelo saber.

Esto es lo que intenté y no tuve éxito.

Intenté usar el método gui_upload y pasar "asc" como tipo de archivo al importar un archivo de tipo .doc, pero me devuelve una cadena llena de caracteres extraños.

Intenté convertir esta cadena a xstring usando cl_proxy_service=>cstring2xstring, pero me di cuenta de que mi primer paso de carga de archivo en sí estaba mal.

Por favor, házmelo saber si sabes cómo convertir archivos de varios tipos a binario.

Gracias,

Pooja

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

¡Hola a todos!

Gracias por toda la información y la ayuda proporcionada por todos ustedes.

He encontrado una forma de cargar un documento de Word o PDF con gui_upload. El tipo de archivo utilizado en el método sería "BIN" y se debe hacer lo siguiente: declarar el tipo de datos como se indica a continuación y el archivo sería la ruta completa junto con el nombre del documento que se va a cargar.

DATA: BEGIN OF res_line,

raw(255) TYPE x,

END OF res_line.

DATA: res_tab LIKE res_line OCCURS 0 WITH HEADER LINE.

data : wf_var_stringx TYPE xstring .

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = file

filetype = 'BIN'

read_by_line = 'X'

  • has_field_separator = ' '

  • header_length = 0

  • header_line = 'X'

IMPORTING

filelength = l_filelength

TABLES

data_tab = res_tab

EXCEPTIONS

OTHERS = 1.

*

LOOP AT res_tab .

CONCATENATE wf_var_stringx res_tab-raw INTO wf_var_stringx IN BYTE MODE.

ENDLOOP.

*

Esto cargará el archivo y completará la cadena x con su contenido.

Espero que esto ayude a algunos de ustedes.

Gracias

Pooja

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Prueba esto FM,

C13Z_FILE_UPLOAD_BINARY - Sube un archivo en formato binario

C13Z_FILE_DOWNLOAD_BINARY - Descarga un archivo en formato binario

y creo que deberías usar 'BIN' en el gui_upload.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

Si deseas leer un archivo de Word como un archivo de Word directamente, es decir, sin convertirlo a texto, entonces debes descubrir/encontrar el formato interno y escribir un programa para manejarlo. Sería efectivamente una versión ABAP de un visor de documentos de Word. Aplicaciones como Open Office han logrado hacer esto, pero incluso con su código fuente, tendrías una tarea muy difícil por delante.

Si estás utilizando la última versión de Word (2007), entonces puedes escribir relativamente fácilmente un analizador XML para el formato de archivo XML de Microsoft Open Office (OOXML).

Podría ser posible escribir una macro VBA de Word que extraiga la información del documento de Word, la cual podrías llamar desde ABAP utilizando OLE. Pero nuevamente, mucho depende de tu versión de SAP y tu versión de Word.

Por supuesto, puedes simplificar el problema dramáticamente convirtiendo el documento de Word a un formato de texto y luego leyendo el archivo de texto mediante GUI_UPLOAD.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Prueba esto FM,

C13Z_FILE_UPLOAD_BINARY - Sube un archivo en formato binario

C13Z_FILE_DOWNLOAD_BINARY - Descarga un archivo en formato binario

y creo que deberías usar 'BIN' en el gui_upload.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?