Envio de e-mails

Pessol, bom dia!

Gostaria de implementar um processo ao qual enviaremos um e-mail para cada linha contida nesse dataset.

Implementei o processo wfNotificaRepresentantesCreditoClientes para o envio. Porém da forma que está, o e-mail está sendo disparatado apenas para o último endereço listados no dataset:

Screenshot_1.png Porém da forma que implementei, o e-mail está sendo enviado apenas para o último endereço listado no dataset, ou seja é enviado apenas um e-mail. Segue trecho da implementação:


if(nextSequenceId == fim){                
            var returnFields = new Array("REPRESENTANTE,NOMEVEND,NOME,EMAIL");

            var dataset = DatasetFactory.getDataset("dsNotificaRepresentanteCreditoClientes", returnFields, null,null);

            for (var i = 0; i < dataset.values.length; i++) {
                var emailAll = new Array(dataset.getValue(i, "EMAIL"));
                var emailAll = dataset.getValue(i, "EMAIL");

                REPRESENTANTE = dataset.getValue(i, "NOMEVEND");
                parametros.put("REPRESENTANTE", REPRESENTANTE);

                RAZAO = dataset.getValue(i, "NOME");                
                parametros.put("RAZAO", RAZAO);                

            }            
            destinatarios.add(emailAll);
            notifier.notify("admin", "email_notifica_representantes_reavaliacao_clientes", parametros, destinatarios, "text/html");
}

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Pelo que entendi você tem que enviar um e-mail para cada item do dataset, então seu notifier.notify (e destinatarios.add) deveria estar dentro do for, ainda mais porque para cada e-mail você passa parâmetros diferentes. Então pra evitar enviar e-mails para todos várias vezes você tem que que "zerar" a variável destinatarios a cada iteração do for.

@Bruno, eu já havia colocado e coloquei novamente o notifier.notify (e destinatarios.add) dentro do for. Porém ao colocar dentro do for está disparando muito e-mail mas do que o total de linhas do dataset. Acho para cada e-mail está sendo enviado todas as linhas

@Quemuel, entendo. Mas você “limpava” a variável destinatarios a cada iteração? Ela é uma lista, então a cada iteração é adicionado um novo e-mail, então você tem que limpar ela antes de ir para a próxima iteração justamente pra não encher ela com todos os e-mails do dataset. Dentro do for, após chamar a notifier.notify só colocar a chamada destinatarios.clear() pra limpar a lista (acho que é esse o comando).

Isso Mesmo @Bruno. Resolveu aqui com o destinatarios.clear(). Muitíssimo obrigado!