sábado, 7 de marzo de 2015

Mandar mails desde PeopleSoft -> Chau SendMail()

Hola!

A partir de las tools 8.52 la función SendMail() ha sido considerada obsoleta, y fue reemplazada por una herramienta mas potente: La clase PT_MCF_MAIL:MCFOutboundEmail 

Como todavía no la encuentro muy utilizada decidí hacer este post, tanto para tenerlo siempre presente, como para cualquier curioso que todavía no la conozca.

Acá va una forma rápida de usarla:

1) Importamos la clase:

import PT_MCF_MAIL:MCFOutboundEmail ;

2) Instanciamos un objeto de la misma

 Local PT_MCF_MAIL:MCFOutboundEmail &eMail = create PT_MCF_MAIL:MCFOutboundEmail();

3) Agregamos los datos necesarios de la siguiente manera

   &eMail.From = "miCorreo@servidor.com" ;
   &eMail.Subject = "Este es el asunto del mail";
   &eMail.Text = "Este sería el texto del cuerpo del mail";
   
4) Si precisamos agregar adjuntos, tenemos el método AddAttachment
Y una breve forma de usarlo sería
   &eMail.AddAttachment( &rutaAdjunto +  &nombreAdjuntoConExtension  , %FilePath_Absolute | %FilePath_Relative, &nombreAdjuntoConExtension, "Descripción del Adjunto" , "", "");
   
5) Enviamos el mail, como nos devuelve un valor de retorno tenemos dos formas de hacerlo.
  • If &eMail.Send() = %ObEmail_Delivered then
  • Local integer &i_ret = &eMail.Send();

Si el retorno del método es 1, salió todo bárbaro... sino... a revisar!

Número
Constante de Retorno
Descripción
0
%ObEmail_ FailedBeforeSending
El correo falló antes de ser enviado
1
%ObEmail_Delivered
El correo se envió correctamente
2
%ObEmail_NotDelivered
No se pudo entregar el correo.
3
%ObEmail_PartiallyDelivered
El correo se entregó pero no a TODOS los destinatarios.
-1
%ObEmail_ SentButResultUnknown
Se envió el correo, pero se desconoce si fue entregado.
Para mas detalles de la clase, pueden simplemente ver los books relacionados al tema en el siguiente link:
http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tpcr/task_MCFOutboundEmailClass-f451c6.html

Espero que este simple Paso a Paso les resulte tan útil como a mí.

Saludos.
Facundo Salerno.

No hay comentarios:

Publicar un comentario