PDA

Ver la Versión Completa : Tabla de Binarios a PDF


sergiosapi
12/01/17, 10:24:33
Buenos días y Feliz Año nuevo a todos, espero que este año sea un gran año para todo el mundo ;) ,

Tengo un serio problema. Desde .NET, por medio de una función RFC, nos pasan una tabla de binarios correspondientes a un PDF que les adjuntan en la web. La longitud de cada línea de esta tabla es de CHAR de 255. Esta tabla se guarda en una tabla transparente en la se11.

Cuando recupero la tabla de la se11 en una tabla interna en otro programa para poder ver el PDF me es imposible. Llevo toda la semana buscando y lo que encuentro en todos los casos es que ya la información se obtiene de un archivo guardado en PDF, de ahí se pasa a XSTRING o lo que se quiera y finalmente otra vez a PDF y se muestra el contenido.

Mi problema es que no existe archivo, solo la tabla esta de binarios (11100001010101111000100101001....) para poderlo pasar a XSTRING, me pide el tamaño del fichero guardado, pero es que no tengo dicho tamaño así que la conversión a XSTRING, o cualquier otro formato, o la hace mal o directamente ni la hace y cuando esto lo consigo guardar en PDF, este está corrupto y da fallo al abrir por el contenido, me ha llegado a dar este error "El archivo no empieza por '%PDF-'.".

Además, el contenido de la tabla es muy distinto de lo que suelen coger las funciones de archivos PDF ya guardados. Si coges la información de un archivo ya guardado lo coge como (AE3890SD90UVNI09SDJI....), no "1001101101101010101...." como tengo yo. He estado buscando información sobre binarios por el tema de BASE64, BASE132, BASE1022.... Y en cda sitio te viene una cosa que si solo depende de la extensión de CHAR que guardes en otros te viene como si fuera un hexadecimal como trata SAP...

Por favor, ¿me podéis ayudar?


Muchas Gracias.
Un Saludo.

calanis
29/01/17, 13:14:51
Buenas Sergio!

Por las dudas mira esta función:
call function 'SCMS_BINARY_TO_XSTRING'
exporting
input_length = lv_size
importing
buffer = lv_xcontent_in
tables
binary_tab = lt_data.

Para saber el largo del binario, mira este link

Espero que te sea de ayuda

Saludos