MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Enviar 2 archivos adjuntos por mail (foro/showthread.php?t=48078)

pancho6102 24/01/12 22:43:21

Enviar 2 archivos adjuntos por mail
 
Que tal foro tengo que enviar un archivo PDF por mail ( he hecho el codigo y ya funciona ) pero tambien debo adjuntar un archivo TXT y no se como puedo hacer esto alguien que tenga un ejemplo de como hacer este paso con 2 archivos diferentes

uso esta funcion :

CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = vg_email_emisor
sender_address_type = vg_tipe_dirc
commit_work = 'X' " No utilizar en caso de proceso de fondo, sino si
IMPORTING
sent_to_all = vl_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_archivo_adjunto
contents_txt = t_cuerpo_mail
receivers = t_destinatario
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.

pero para 2 archivos no se como deba ir en este foro mencionan la funcion:

CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'

pero no la he logrado funcionar y no encontre un ejemplo de como deba de llamarse si 2 veces o cual sea el metodo.


Saludos!!

mysmb2 25/01/12 11:38:37

yo lo he realizado pero orientado a objetos, llamando al metodo add_attachment tantas veces como archivos quieras adjuntar.


aca declaras las variables
creas la instancia
seteas la dirección de correo
indicas el archivo adjunto y enviar

Saludos.

pancho6102 26/01/12 16:02:05

Gracias mysmb2 por contestar lo estoy implementando cuando termine les cuento como me fue.

Saludos.

izak 27/03/12 15:08:20

Muy intersante lo que dices mysmb2, una consulta, yo tengo que hacer lo mismo, pero mi archivo PDF lo tengo en una carpeta que la puedo ver mediante la AL11, como hago para indicar la carpeta, nombre de archivo y luego mandarlo por correo?

Te agradeceria puedas ayudarme.
Gracias de antemano!.

mysmb2 27/03/12 18:08:52

Hola izak,
A tu archivo lo tenes que levantar en una tabla interna con el OPEN DATASET. la tabla interna que tiene esta información en el ejemplo es lt_hexa.

Saludos

pancho6102 03/04/12 23:48:44

exactamente igual hice algo parecido en otro proceso con la conversion algun formato de la imagen a un atabla interna y de ahi el metodo de adjuntar.

Gracias por la aportacion mysmb2.

Yanett Ponce Seares 25/04/14 15:39:36

Como crear HTML para enviar por correo
 

Hola a todos, espero me puedan ayudar he buscado necesito adjuntar el detalle de una tabla interna a un HTML y enviar por correo. Gracias¡

djabegac 18/11/14 11:26:15

Error en archivo PDF (URGENTE)
 
Hola a todos,
estoy intentando mandar por correo un archivo pdf, que está en el servidor, porque se tiene que mandar en fondo. Guardo el fichero en una tabla interna tipo solix_tab y al intentar abrir el fichero desde el correo me dice aparece el siguiente mensaje: 'Error al abrir el documento. El archivo está dañado y no puede repararse'. Es bastante urgente, si alguien ha sido capaz de hacer lo que indico y me dice que es lo que hago mal.

El código que estoy utilizando es este, por si alguien me puede echar una mano:

DATA:
lo_email TYPE REF TO cl_bcs,
lo_email_body TYPE REF TO cl_document_bcs,
lo_receiver TYPE REF TO if_recipient_bcs,
lv_message TYPE soli_tab,
lv_attachment_size TYPE soattchgi1-att_size,
lt_hexa TYPE solix_tab.

DATA: lv_send_result TYPE dtype.

* Se traspasa el contenido del fichero PDF a la tabla interna
OPEN DATASET sp_file FOR INPUT IN BINARY MODE.
DO.
READ DATASET sp_file INTO lv_conten.
IF sy-subrc NE 0.
EXIT.
ENDIF.
APPEND lv_conten TO lt_hexa.
ENDDO.
CLOSE DATASET sp_file.

* Crear instancia
lo_email = cl_bcs=>create_persistent( ).
lo_email_body = cl_document_bcs=>create_document( i_type = 'HTM'
i_text = lv_message
i_subject = 'Asunto correo' ).
lo_email->set_document( lo_email_body ).


* Direccion de correo
lo_receiver = cl_cam_address_bcs=>create_internet_address( mailto ).
lo_email->add_recipient( i_recipient = lo_receiver
i_express = 'X' ).
lo_email->set_send_immediately( 'X' ).

fich = sp_file.

* Indicar el archivo adjunto y enviar
lo_email_body->add_attachment( EXPORTING
i_attachment_type = 'PDF'
i_attachment_subject = 'Documento.pdf'
i_attachment_size = lv_attachment_size
i_att_content_hex = lt_hexa ).

lo_email->send( EXPORTING
i_with_error_screen = 'X'
RECEIVING
result = lv_send_result ).
COMMIT WORK.

Un saludo y muchas gracias,
David.

MISAP 23/12/15 18:22:38



Estoy enviando archivos TXT adjuntos pero no se repetan los saltos de línea.
Por favor sus comentarios.

Gracias & Saludos!

MISAP 23/12/15 18:23:45


Estoy enviando archivos TXT adjuntos pero no se repetan los saltos de línea.
Por favor sus comentarios.

Gracias & Saludos!


Husos Horarios son GMT. La hora en este momento es 04:06:42.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web