¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo cambiar la codificación de archivos adjuntos en SAP para correos electrónicos

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

Hasta ahora hemos estado enviando correos electrónicos con archivos de texto adjuntos utilizando cl_document_bcs. Estos archivos eran y necesitan ser UTF-8 para nuestros destinatarios.

Desde Enhancement Pack 6 SAP ahora los envía como UTF-16LE (ver sost.png). ¿Cómo podemos cambiar esto?


Cambiar la configuración en SCOT a UTF-8 no ayuda (ver scot.png).

cl_document_bcs => create_document( ... ).

...

lo_document -> add_attachment ( i_att_content_text = ... ).

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

4 Respuestas

0
Cargando...

¡Gracias! Definitivamente eso funcionó para mí, utilicé esta forma para producir el archivo adjunto del correo electrónico con codificación ANSI (usando la clave 1160).

DATA: lt_attachment_header TYPE soli_tab.
APPEND '&SO_CODEPAGE=1160' TO lt_attachment_header.

IF lt_file_soli IS NOT INITIAL.
lo_document->add_attachment(
i_attachment_type = 'txt' "reemplazar con una constante
i_attachment_subject = iv_name_file
i_att_content_text = lt_file_soli
i_attachment_header = lt_attachment_header
).
ENDIF.

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

¡Gracias a ustedes!

Nuestra solución implicó modificar los encabezados de los archivos adjuntos para forzar UTF-8.

DATA: lt_attachment_header TYPE soli_tab.APPEND '&SO_CODEPAGE=4110' TO lt_attachment_header.lo_document->add_attachment( i_attachment_type    = ls_attachment-objtp                                   i_attachment_subject = lv_attachment_subject                                   i_att_content_text   = ls_attachment-cont_text                                   i_attachment_header  = lt_attachment_header ).
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Marc,

Si observas la clase CL_BCS_CONVERT, hay un par de opciones de método que puedes usar para convertir el texto en un tipo de tabla SOLIX_TAB. En ella notarás que hay un parámetro 'IV_CODEPAGE' que en la descripción menciona que el valor predeterminado es el ajuste de SAPConnect. Si conviertes primero en este tipo de tabla, solo necesitarías modificar tu código para agregar el archivo adjunto a este formato (Estoy en EHP4, por lo que tal vez no sea lo mismo para tu sistema, pero vale la pena investigar):

lo_document -> add_attachment ( i_att_content_hex = ... ).

Saludos,

Ryan Crosby

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

Hola Marc,

por favor, revisa la nota OSS: Nota 979922 - Correspondencia: correo HTML y formato de caracteres

Síntoma

Cuando envías un correo HTML, este se envía con el conjunto de caracteres utilizado por el sistema. Los sistemas Unicode utilizan los conjuntos de caracteres UTF-16be y UTF-16le. Dado que ambos conjuntos de caracteres no son comúnmente utilizados en Internet y no son reconocidos por todos los proveedores de correo, pueden surgir problemas al mostrar correos.

Razón y Requisitos previos

Varios proveedores de correo no pueden reconocer correos HTML con los conjuntos de caracteres UTF-16be o UTF-16le.

Solución

Esta nota proporciona las siguientes correcciones:

  • Se establece el conjunto de caracteres UTF-8 como formato de salida estándar.
  • Se proporciona un BAdI que puedes usar para modificar el HTML del correo teniendo en cuenta al destinatario del correo. Por lo tanto, puedes hacer ajustes para proveedores de correo específicos o destinatarios de correo sin modificar el código existente.

En segundo lugar, en el SCOT podrías definir una conversión. Por ejemplo, puedes configurar que los Smartforms se conviertan a PDF... tal vez podrías configurar txt como UTF-8... (No puedo conectarme a un SAP a tu nivel)

Saludos

Fred

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?