Disparando eMails através da GPEMail – Maratona AdvPL e TL++ 295

Nesse vídeo demonstraremos a utilização da função GPEMail, que serve para disparar eMails conforme as parametrizações da SX6.

Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:

//Bibliotecas
#Include "TOTVS.ch"

/*/{Protheus.doc} User Function zExe295
Realiza um disparo de eMail
@type  Function
@author Atilio
@since 21/02/2023
@see https://tdn.totvs.com/pages/releaseview.action?pageId=463812948
@obs 
    
    Função GPEMail
    Parâmetros
        + cSubject    , Caractere      , Assunto do e-Mail
        + cMensagem   , Caractere      , Corpo do e-Mail
        + cEMail      , Caractere      , Destinatários
        + aFiles      , Array          , Arquivos em anexo (sempre dentro da Protheus Data)
        + lMensagem   , Lógico         , Se irá exibir mensagem caso haja falha no envio
    Retorno
        Retorna .T. se conseguiu disparar o e-Mail ou .F. se não

    Obs.: Os parâmetros que devem ser cadastrados com as informações do seu provedor são
        + MV_RELAUTH - ex.: .T.
        + MV_RELSERV - ex.: mail.seudominio.com:587
        + MV_RELACNT - ex.: contato@seudominio.com
        + MV_RELPSW  - ex.: suaSenha
        + MV_RELSSL  - ex.: .F.
        + MV_RELTLS  - ex.: .T.

    **** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/

User Function zExe295()
    Local aArea      := FWGetArea()
    Local cPara      := "contato@atiliosistemas.com; "
    Local cAssunto   := ""
    Local cCorpo     := ""
    Local aAnexos    := {}
    Local lExibeHelp := .T.

    //Monta o corpo do e-Mail
    cCorpo := '

Olá.

' cCorpo += '

' cCorpo += '

Esse é um e-Mail de teste gerado pelo ERP Protheus.

' cCorpo += '

' cCorpo += '

Data ' + dToC(Date()) + ' às ' +Time() + '.

' //Adição de Anexos (somente arquivos dentro da protheus data) /* aAdd(aAnexos, "\pasta\arquivo1.pdf") aAdd(aAnexos, "\pasta\arquivo2.xlsx") aAdd(aAnexos, "\pasta\arquivo3.txt") */ //Faz o disparo via GPEMail cAssunto := "Envio de Teste (GPEMail)" lEnvio := GPEMail(cAssunto, cCorpo, cPara, aAnexos, lExibeHelp) If lEnvio FWAlertSuccess("Sucesso no disparo do e-Mail", "Teste GPEMail") Else FWAlertError("Falha no disparo do e-Mail", "Teste GPEMail") EndIf FWRestArea(aArea) Return

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

2 Responses

  1. Lucas L Lopez disse:

    Muito boa noite!

    Para o pessoal que está usando gmail e tendo dificuldade para efetuar o envio, ler esta documentação:

    https://tdn.totvs.com/display/tec/Application+Server+-+Uso+de+e-mail+com+GMail?spaceEditingRestriction=true

    Somente consegui efetuar o envio através do GPEMail, habilitando a autenticação de 2 fatores e Senha de APPs

Deixe uma resposta

Terminal de Informação