Ver Mensaje Individual
  #2  
Viejo 16/07/11, 18:27:26
Avatar de abapedro
abapedro abapedro is offline
Member
 
Fecha de Ingreso: mar 2007
Mensajes: 83
Smile Envio email contenido tabla interna

Hola minerva0112,

Te sugiero utilizar la clase:

cl_document_bcs

ejemplo:

DATA: mensaje TYPE REF TO cl_bcs.

El cuerpo del mensaje se debe incluir en una tabla del tipo: bcsy_text

ejemplo:

DATA: texto_mensaje TYPE bcsy_text.

Es simplemente una tabla con un solo campo que es de 255 caracteres.

Habría que transferir la tabla interna a la del cuerpo del mensaje (texto_mensaje), convirtiendo cada registro de la interna en un string antes de pasarlo al respectivo registro de la tabla del cuerpo (texto_mensaje).

Después se crea un "documento", así:

DATA: documento TYPE REF TO cl_document_bcs.
documento = cl_document_bcs=>create_document(
i_type = 'RAW'
i_text = texto_mensaje
i_length = '12'
i_subject = asunto ).

En donde "asunto" es un string que contiene el texto que aparecerá como "referencia" en el mensaje.

Luego se crea el mensaje:

mensaje = cl_bcs=>create_persistent( ).

Luego se le asigna el cuerpo así:

CALL METHOD mensaje->set_document( documento ).

El destinatario se define usando:

recipient = cl_cam_address_bcs=>create_internet_address(
'buzon_destino@vialactea.com' ).
CALL METHOD mensaje->add_recipient
EXPORTING
i_recipient = recipient
i_express = 'X'.

El remitente se define usando:

sender = cl_cam_address_bcs=>create_internet_address('buzon_remitente@vialactea.com')
mensaje->set_sender( i_sender = sender ).


Ya el mensaje está listo y se puede enviar:

call method mensaje->send_without_dialog.

Adicionalmente, se pueden adicionar anexos al mensaje usando:

call method documento->add_attachment

Observa que el anexo se adiciona al 'documento', no al 'mensaje' (antes de asignar el documento al mensaje).

Espero que esta pequeña explicación te sirva.

Abapedro
Responder Con Cita