En una aplicación tengo que estar enviando correos con 2 archivos adjuntos muy seguido (son facturas electronicas), el caso es que ha determinado tiempo ya no ejecuta el outlook, mi duda es la siguiente
al crear el objeto
local oOutlook := CreateObject( "Outlook.Application" )
debo crearlo solo una vez al iniciar el programa ???, o cada vez que envie un correo ??
cMessage += "<ul><li><a href='ejemplo.com.mx'>Empresa Invalida</a></li></ul>"
oMail := oOutlook:CreateItem( olMailItem )
with object oMail
oMail:Subject = cAsunto
oMail:BodyFormat = olFormatHTML
oMail:HTMLBody = cMessage
oMail:Recipients:Add( Alltrim(varCli) )
oMail:Recipients:Add( wReplicar )
oMail:Attachments:Add( cImagen )
oMail:Attachments:Add( cImagen2 )
oMail:Display = .T.
* oMail:Send()
END
* oOutlook:Quit() Debo salir de outlook ???
Inmediantamente enviado el correo, se envia otros mas.
Que tendria que hacer para evitar este error ?
Uso de Outlook
Re: Uso de Outlook
Hola,
Outlook.Application sirve para capturar el objeto outlook que esté abierto ó para abrirlo en su defecto.
Cuando tengo que enviar algo a través de Outlook, primero compruebo si está activo (osea outlook está abierto en el equipo) y defino la variable lClose para saber si tengo que cerrarlo al finalizar.
En el caso de envíos consecutivos (ej. facturas electrónicas), la comprobación la realizo 1 vez. Al inicio del procedimiento de envío de facturas electrónicas.
Y cierro (si es necesario), la finalizar el procedimiento de envío de facturas.
Outlook.Application sirve para capturar el objeto outlook que esté abierto ó para abrirlo en su defecto.
Cuando tengo que enviar algo a través de Outlook, primero compruebo si está activo (osea outlook está abierto en el equipo) y defino la variable lClose para saber si tengo que cerrarlo al finalizar.
Code: Select all
TRY
oOutlook := GetActiveObject( "Outlook.Application" )
lClose := .F.
CATCH
TRY
oOutlook := CreateObject( "Outlook.Application" )
lClose := .T.
CATCH
oOutlook := NIL
END
END
Y cierro (si es necesario), la finalizar el procedimiento de envío de facturas.
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
Fernando González Diez
ALSIS GHE Sistemas Informáticos
-
- Posts: 159
- Joined: Fri Nov 18, 2005 7:34 pm
Re: Uso de Outlook
Muchas gracias por la respuesta, solo que para reducir tiempo de envio del usuario, quite el:
omail:Display=.T. //muestra la pantalla de outlook para que el usuario le de al boton "enviar"
y deje solo
omail:Send()
Pero no envia, me saca del programa y pone el error e_fail:send
Alguna idea de lo que ocurre ?
Gracias
omail:Display=.T. //muestra la pantalla de outlook para que el usuario le de al boton "enviar"
y deje solo
omail:Send()
Pero no envia, me saca del programa y pone el error e_fail:send
Alguna idea de lo que ocurre ?
Gracias
Re: Uso de Outlook
Hola,
En eso no puedo ayudarte, lo siento.
Yo no hago el envío sin intervención del usuario. Se los dejo todos en bandeja de salida.
En eso no puedo ayudarte, lo siento.
Yo no hago el envío sin intervención del usuario. Se los dejo todos en bandeja de salida.
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
Fernando González Diez
ALSIS GHE Sistemas Informáticos