Categorias
TOTVS Fluig

TOTVS FLUIG – Como enviar emails personalizados em eventos de processo

No post de hoje, trago uma solução bem simples para envio de emails em eventos de workflow.

Explicarei cada trecho do código ao longo do post, e no final, disponibilizarei os arquivos javascript, e html, para vocês baixarem.

*Lembrando que para os scripts abaixo, funcionem corretamente, as configurações de email devem estar ajustadas e testadas no WCMADMIN.

Vamos iniciar pelo script de envio, declarando algumas variáveis com informações provenientes dos campos do formulário utilizado no processo.

var idFluig = getValue("WKNumProces") + '';
var emails = hAPI.getCardValue('emails');
var nome_solicitante = hAPI.getCardValue('solicitante');
var nome_gerente = hAPI.getCardValue('nomeGerente') ;
var nome_supervisor = hAPI.getCardValue('nomeSupervisor');
var valor_total = hAPI.getCardValue('total');

Em seguida, crio uma lista java, chamada PARAMETROS.

var parametros = new java.util.HashMap();

Nessa lista PARAMETROS, insiro as informações que eu preciso passar para o template de email, utilizando o padrão (CHAVE, VALOR)

parametros.put("NOME_USUARIO", nome_solicitante); parametros.put("NOME_SOLICITANTE", nome_solicitante);
parametros.put("NOME_GERENTE", nome_gerente); parametros.put("NOME_SUPERVISOR", nome_supervisor);
parametros.put("VALOR_TOTAL", valor_total);

Essa chave SUBJECT, em específico, é a responsável pelo assunto do email.
Nesse exemplo, estou informando o pagamento de uma solicitação, e concatenando algumas variáveis.

parametros.put("subject", "Pagamento Efetuado para a solicitação (" + idfluig + ") / colaborador (" + nome_solicitante + ")");

Agora, vamos aos destinatários. Para isso, eu crio um array java, chamado DESTINATARIOS.

var destinatarios = new java.util.ArrayList();

Utilizo o método SPLIT para dividir os emails inseridos no campo do formulário separados por “;”.

var emails = emails.split(';')

Rodo um FOR a partir da quantidade de emails detectados na variável EMAILS.

for (var i = 0; i < emails.length; i++) {
  destinatarios.add(emails[i]);
}

Pra finalizar o script e enviar o email, utilizamos a função NOTIFY, alimentando os 5 parâmetros, com as seguintes informações:

Parâmetro 1: Matricula Fluig do usuário remetente deste email.
Recomendamos a criação de um usuário especialmente para utilização como remetente, e que no cadastro dele, seja inserido o mesmo endereço de email da conta cadastrada para envios no WCMADMIN, pois, alguns servidores de email, como o OUTLOOK, não aceitam que uma conta envie mensagens utilizando um endereço de remetente diferente do endereço dela.

Parâmetro 2: Código do TEMPLATE DE EMAIL cadastrado no Painel de Controle do Fluig. Ainda nesse post, exibo um template exemplo.

Parâmetro 3: A variável PARAMETROS, com as informações que serão utilizadas no Template de Email.

Parâmetro 4: A variável DESTINATÁRIOS com a lista de endereços que receberão o email.

Parâmetro 5: Formato do email enviado.

notifier.notify("fluig_email", "tpl_confirmacao_pgto", parametros, destinatarios, "text/html");

Agora, vamos ao Template de Email:

Lembram daquelas informações que adicionamos a lista java PARAMETROS para posteriormente serem exibidas no template de email? Aqui estão elas, referenciadas entre ${} no arquivo html. Esse é um exemplo básico, mas vocês podem passar quantas informações precisarem do script para o template.

<table cellspacing="0" cellpadding="0" border="0">
    <tbody>
        <tr>
            <td style="padding: 25px;">
                <h3 class="title">
                    Pagamento Realizado com sucesso!
                </h3>
                <p class="description">
                    O pagamento de ${VALOR_TOTAL} referente as despesas da viagem foi efetuado!
                </р>
                <div class="beneficiado">
                    <b>Beneficiado: </b> ${NOME_SOLICITANTE}
                </div>
                <div class="aprovadores">
                    <p>
                        <b>Supervisor Aprovador:</b> ${NOME_SUPERVISOR}
                    </р>
                    <р>
                        <b>Gerente Aprovador: </b> ${ NOME_GERENTE}
                    </р>
                </div>
            </td>
        </tr>
    </tbody>
</table>

O destinatário receberá o email parecido com esse, com as informações preenchidas no lugar das variáveis entre ${}:

Agora, mãos a obra! Clique no link abaixo, e faça o download dos arquivos que exibi ao longo desse post.
https://github.com/jorgeMaicon/fluig-script-email-personalizado

Caso este tutorial tenha lhe ajudado, deixe um comentário abaixo. Adorarei saber!

Fluig é uma marca registrada da Totvs S.A.

Documentação Oficial TOTVS Fluig: https://tdn.totvs.com/display/public/fluig/TOTVS+FLUIG

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *