Enviando e-mail pelo protheus


Função para enviar e-mail pelo Protheus, existe outras formas de envio, mas hoje vou postar apenas uma.

User Function TestaMail()
    Local _cHTML := ""

    _cHTML:='<HTML><HEAD><TITLE></TITLE>'
    _cHTML+='<META http-equiv=Content-Type content="text/html; charset=windows-1252">'
    _cHTML+='<META content="MSHTML 6.00.6000.16735" name=GENERATOR></HEAD>'
    _cHTML+='<BODY>'
    _cHTML+='<H1><FONT color=#ff0000>Envio de informações Pedido de Compra</FONT></H1>'
    _cHTML+='<p>texto aqui</p>'
    _cHTML+='</BODY></HTML>'

    // Envia o e-mail
    cAviso := u_envemail("remetente@dominio.com","para@dominio.com","comcopia@dominio.com","comcopiaoculta@dominio.com","cAssunto",_cHTML)
    
    alert(cAviso)
    
Return
//funcao
user function envemail(cDe,cPara,cCC,cCO,cAssunto,cMsg)
    Local lResulConn := .T.
    Local lResulSend := .T.
    Local lResult    := .T.
    Local cError     := ""   
    Local cRet       := ""                                         
    Local _cUsuario  := GetMV("MV_MAILUSE")
    Local _cSenha    := Embaralha(GetMV("MV_MAILPAS"), 1) 
    Local _lJob      
    
    lResulConn := MailSmtpOn( "smtp.dominio.com", _cUsuario, _cSenha)
    If !lResulConn//GET MAIL ERROR 
        cErrorcError := MailGetErr()
        If _lJob
            cRet := Padc("Falha na conexao "+cErrorcError)
        Else
            cRet := "Falha na conexao "+cError
        Endif
        Return(.F.)
    Endif

    SEND MAIL FROM cDe TO cPara CC cCC BCC cCO SUBJECT cAssunto BODY cMsg FORMAT TEXT RESULT lResulSend
    
    if !lResulSend
        cRet:= "Falha no Envio!"
    else
        cRet:= "E-mail enviado com sucesso!"
    endif

return(cRet)