P_ExecutaEmail

<< Click to Display Table of Contents >>

Navigation:  Funções da DLL >

P_ExecutaEmail

Public Declare Function P_ExecutaEmail Lib "TaskReport.dll" (ByVal IdRelatorio As String, ByVal GrupoUsuarios As String, ByVal CampoFiltro As String, ByVal SQL As String, ByVal Arquivo As String, ByVal CampoEmailDestino As String, ByVal CampoEmailDestinoCCo As String, ByVal Assunto As String, ByVal Mensagem As String, ByVal Servidor As String, ByVal usuario As String, ByVal senha As String, ByVal Porta As String, ByVal SSL As Integer, ByVal ArquivoINI As String) As Boolean

 

está função envia um ou mais emails com um relatório anexo, ela pode ser utilizada de diversas maneiras, e para isso fique atento os parametors enviados pela função,

ela não exibe nenhuma tela apenas processa e envia os emails com o relatorio em anexo.

 

 

parametros:

 

IdRelatorio  - informar o codigo do relatorio entre "" pois e um parametro do tipo string, caso o ID possua letras, o taskreport ira tentar localizar o mesmo por sua identificação e não pelo ID

 

GrupoUsuarios - informar vgPwGrupo indicando o grupo de acesso, caso o grupo nao tenha permissão para executar o relatorio, o email não será enviado.

 

CampoFiltro   - informe o nome do campo que sera usado para filtragem dos registros (campo existente no proximo parametro sql)

                     o valor desse campo sera passado para o relatorio para filtragem, ex "CODCLIENTE"

 

SQL  - aqui voce ira informar o sql que sera disparado para busca dos registros que será utilizado como base para o envio do email

         você pode por ex passar o sql que retorne uma lista de clientes, uma lista de funcionarios, uma lista de fornecedores, para cada registro retornado sera enviado um email

         ex: SELECT distinct C.EMAIL,C.EMAILCC,C.CODCLIENTE,C.NOMECLIENTE from clientes c inner join contasareceber r on c.codcliente=r.codcliente where r.maioratrazo>15

            um exemplo para enviar email para clientes  em atraso, nesse sql para cada registro retornado sera enviado um email

 

Arquivo  -> arquivo que será gerado ao executar o relatorio, deve ter extensoes PDF, DOC ou XLS

               o nome do arquivo sera adicionado a um SUFIXO usando como base o campo de filtro enviado

               ex:

               c:\sistema\notasematraso.pdf

               ao gerar o relatorio, sera capturado o CODCLIENTE para salvar o nome do arquivo

               entao seria criado um PDF para cada cliente

               ex:

               c:\aquivosemail\notasematraso_150.pdf   (onde 150 seria o codcliente)

           

CampoEmailDestino   -> aqui voce irá indicar o nome do campo que voce informou no sql que contem o email destino, no nosso exemplo seria o campo EMAIL

                                   você pode tambem passar o email diretamente nesse parametro ex: fulano@site.com.br

 

CampoEmailDestinoCCo -> caso queria enviar com copia, o sql acima teria que existir tambem um campo para o email com copia (opcional) no exemplo seria o campo EMAILCC

 

Assunto      -> assunto da mensagem

 

Mensagem  -> aqui voce pode passar a mensagem ou o nome de um arquivo informando o  aminho completo

                     que será lido e utilizado no corpo do email, pode ter extensão TXT ou HTML

                     no conteudo do arquivo você poderá usar tags que será substituida pelo registro atual do SQL, no nosso exemplo

                     se no conteudo do arquivo existir a tag  @NOMECLIENTE, ela seria substituida pelo nome do cliente correspondente,

                     a tag tem que ser exatamente igual ao nome do campo com o sinal de @, respeitando minuscula ou maiuscula

                     se não for informado um arquivo o conteúdo do parametro será usado no corpo do email,

                     idependente se a mensagem for passada diretamente no parametro ou for lida de um arquivo HTML ou TXT, ela poderá conter as tags

                     de substituição

 

Servidor       -> servidor de origem usado para enviar o email

 

usuario        -> usuario que será usado para enviar o email

 

senha          -> senha do usuario que sera usado para enviar o email

 

Porta           -> porta do servidor de email

 

SSL            -> parametro para SSL  0 - NENHUM, 1 -Explicito, 2 - Implicito, 3 - automático, você deverá fazer testes com alterando essa opção, pois cada servidor de email pode usar configurações diferentes.

 

ArquivoINI   -> parametro para indicar qual arquivo de configuracao TASKREPORT???.INI será carregado, direcionado assim a conexao com o banco de dados correspodente.

 

 

com base nessas informacoes acima

ao executar a função, o task executa o sql, e para cada registro, o task captura o CODCLIENTE (campo filtro) e executa o relatorio passando esse campo como filtro, gera o PDF

 

voce pode usar essa função tambem apenas para gerar os pdf , doc ou xls, com base nas configurações acima, e não enviar o email

para isso bastaria executar a função sem informar o campo CampoEmailDestino

 

dessa forma o task irá fazer todo o processo, criando os arquivos, mas não vai enviar os emails.