Páginas filhas
  • LTMS1026 - Funcionamento de envio de e-mails da rotina de CTe

Produto:

Logix

Ocorrência:

 

Passo a passo:

Esta FAQ visa explicar e exemplificar todas as situações e parametrizações relacionadas ao envio automático de e-mails na rotina de CTe do Logix TMS.

Configurações iniciais

Inicialmente, para que as rotinas de envio do Logix TMS funcionem (ver itens 2 e 3 desta FAQ), faz-se necessário incluir as configurações abaixo no arquivo “totvsprofile.pro”, adaptando-as de acordo com as configurações de sua rede.

Nota: Verifique com seu administrador de rede as configurações abaixo.

É possível parametrizar variáveis de ambiente no Windows onde o Logix está instalado, para que seja efetuado o envio dos e-mails, porém, elas só serão utilizadas caso suas variáveis equivalentes não estejam informadas no arquivo “totvsprofile.pro”.

Nota: A variável “sendApp” não é parametrizável nas variáveis de ambiente, e caso não esteja parametrizada dentro do totvsprofile, o sistema assume como padrão o valor “SENDMAIL”.

Abaixo está o detalhamento de cada variável:

Existem 3 rotinas de envio, 1 feito pelo TSS e 2 feitos pelo próprio Logix TMS. Abaixo o detalhamento de cada um:

1 – TSS: Envio de e-mail de configuração OK, e de e-mail do XML protocolado

OMC9109: Parâmetros de processamento do CTe: Antes de efetuar o envio, retorno ou cancelamento de um CTe para o TSS (via programas OMC9202 ou TMS20002), a rotina sempre verifica se houve alguma mudança nas parametrizações da rotina de CTe (programa OMC9109) e, caso exista, é feita a reconfiguração de e-mails no TSS, utilizando os parâmetros da tela acessada pela opção de menu “e-mail” do programa OMC9109.

A rotina de envio está totalmente relacionada aos parâmetros da parte inferior da tela exibida acima, cuja nomenclatura dos campos é finalizada com a sigla “SMTP”. O campo “E-mail administrador” também está relacionado a esta rotina.

Caso alguma das informações citadas acima esteja incorreta, como, e-mail não cadastrado no servidor, nome do servidor ou senha do e-mail, no próximo envio de CTe para a SEFAZ (pelos programas OMC9202 ou TMS20002), o sistema irá efetuar a comunicação com o TSS para reconfiguração do e-mail, e se não for possível enviar um e-mail de teste com tal configuração, será exibida uma mensagem como a exibida abaixo:

Exemplo: Abaixo, podem ser verificado os parâmetros de e-mail SMTP, onde os campos “Login de e-mail STMP” e “E-mail SMTP” estão diferentes. 

Ao ser chamada, a rotina que efetuará a configuração do e-mail no TSS, os dados serão enviados via comando JAVA para o serviço CFGSMTPMAIL, conforme exemplo abaixo:

  • java funcaoCFGSMTPMAIL "USERTOKEN;TOTVS"
  • "ID_ENT;000013"
  • "AUTHENTICATIONREQUERED;TRUE"
  • "LOGINACCOUNT;silogix"
  • "MAILACCOUNT;silogix@totvs.com.br"
  • "MAILADMIN;wander.horongoso@totvs.com.br"
  • "MAILPASSWORD;czFsMGcxeDE="
  • "MAILSERVER;mail.totvs.com.br" > c:\publico\cte\return_01_lg988939.unl

Pode ser notado que os campos “LOGINACCOUNT” e “MAILACCOUNT” estão diferentes, conforme parametrizado no OMC9109. Ao enviar para o TSS, será feita a validação das configurações, ou seja, um teste de envio de email, sendo “LOGINACCOUNT” o usuário para autenticação, “MAILACCOUNT” o email utilizado como remetente e “MAILPASSWORD” a senha usada para autenticação. Em caso de erro, será exibida a mensagem anterior.

Para que a mensagem não seja mais exibida, deve ser feita a correção dos dados de email no programa OMC9109.

 

Nota: a partir do pacote 04/2014, a comunicação com TSS deixa de utilizar os comandos java e passa a utilizar comandos nativos em AdvPL.

Ao enviar um novo Pré conhecimento para a SEFAZ, o comando enviado para o método ficou da seguinte forma:

  • java funcaoCFGSMTPMAIL "USERTOKEN;TOTVS"
  • "ID_ENT;000013"
  • "AUTHENTICATIONREQUERED;TRUE"
  • "LOGINACCOUNT;aluizio"
  • "MAILACCOUNT;[email protected]"
  • "MAILADMIN;[email protected]"
  • "MAILPASSWORD;czFsMGcxeDE="
  • "MAILSERVER;mail.totvs.com.br" > c:\publico\cte\return_01_lg988939.unl

Desta vez foram utilizados o login e e-mail corretos, e o e-mail de administrador foi modificado. Com isto, a configuração do e-mail ficou correta, e o TSS enviou o e-mail informando que a configuração foi efetuada.

Nota: o e-mail foi enviado para o e-mail informado no campo “E-mail SMTP”, e também para o e-mail informado no campo “E-mail administrador”.

Quando o TSS obter o protocolo de autorização do Conhecimento, será enviado um e-mail com o XML do CTe, SOMENTE para o e-mail cadastrado no campo “E-mail SMTP”.

NOTA: O e-mail informado no campo “E-mail administrador” não será notificado, pois entende-se que este e-mail administrador só receberá e-mails notificando-o sobre alterações nas parametrizações da rotina de CTe.

Nota: a partir do pacote 04/2014, será possível usar as configurações de email definidas no OMC9109 também para o envio de XML e DACTE, detalhados abaixo. Para tal, deve-se observar o parãmetro "protocolo".

Se 0, o sistema continuará usando as configurações do arquivo totvsprofile.pro ou as variáveis de ambiente para conexão com o servidor SMTP de envio de email;

Se 1, será usada a configuração existente no programa OMC9109, utilizando o protocolo SSL de comunicação.

Se 2, será usada a configuração existente no programa OMC9109, utilizando o protocolo TLS de comunicação.

Opcionalmente, pode-se definir a porta usada no servidor de envio de emails. Para tal, deve ser informado no campo "Servidor de e-mail SMTP" o conteúdo no formato servidor: porta. Caso não seja informada a porta, o sistema assume automaticamente a porta padrão 587.

2 – Logix TMS: Envio do XML protocolado e da DACTE, durante a impressão da DACTE

O envio destes e-mails é efetuado automaticamente, de acordo com parametrizações na empresa corrente e no emitente pagador do CTe, durante a geração do arquivo PDF da DACTE, feito na opção “Imprimir” do programa TMS20002, ou pela opção “imprime DACTE” do programa OMC9202.

Abaixo, as parametrizações necessárias para que a rotina funcione.

LOG00087 – Parâmetros do Sistema: Neste programa é possível definir se o envio de e-mail será efetuado, e para qual (ou quais) e-mail(s) ele será enviado.

Caso o parâmetro destacado (envia_email_para_pagador_frete) esteja igual a:

1 – A rotina de envio de e-mails não será executada.

2 – A rotina de envio de e-mails será executada a cada impressão/reimpressão, enviando um único e-mail para o e-mail principal do Pagador do Frete do CTe, com o XML protocolado e a DACTE do CTe em questão.

3 – A rotina de envio de e-mails será executada “n” vezes, de acordo com o que estiver parametrizado para o Pagador do Frete do CTe, no programa OMC0003 (Emitentes), na opção de menu “3 – contatos emitente”.

Obs: “n” indica a quantidade de e-mails cadastrados, e qual tipo de e-mail eles receberão.

Exemplo: Se um e-mail estiver cadastrado para receber a DACTE, e outro e-mail para receber o XML e a DACTE, a rotina será executada 3 vezes.


2.1 – Logix TMS: Envio de e-mail somente para os contatos de e-mail relacionados ao emitente Pagador

Pagador do Frete da Nota Fiscal relacionada ao Pré conhecimento 165039.

Cadastro do emitente que foi definido como Remetente e Pagador da Nota Fiscal em questão.

Cadastro do emitente que foi definido como Destinatário da Nota Fiscal em questão.

Somente para identificá-los, mas estes e-mails não receberão o e-mail com o XML ou com a DACTE.

Ao selecionar o Pré conhecimento no TMS20002 (Painel de CTe) e clicar na opção “Imprimir”, ele efetua a integração do CTRC no Faturamento, e em seguida pergunta qual o destino da impressão. Escolho somente a abertura do documento.

DACTE do CTRC gerada.

Como o sistema está parametrizado para enviar o e-mail para os contatos do emitente pagador, e este emitente pagador recebe tanto a DACTE quanto o XML, o programa efetua 2 envios, um somente do XML protocolado, outro somente da DACTE.

2.2 – Logix TMS: Envio de e-mail somente para o e-mail principal do emitente Pagador

Aproveitando o Pré conhecimento do exemplo anterior, altera-se o parâmetro do LOG00087 para que seja utilizado o e-mail da tela principal do cadastro do emitente (programa OMC0003), destacado abaixo.

Feito isto, o TMS20002 armazena a ação do envio de e-mails no LOG do CTe em questão.

NOTA: Neste caso, foi efetuada a impressão de um CTe, cujo XML não estava na máquina utilizada. Com isso, o programa não conseguiu identificar onde estava o XML do CTe, e emitiu a consistência no LOG. Este erro pode acontecer caso a reimpressão da DACTE, ou até a primeira impressão seja feita em máquina diferente da que emitiu o XML, caso o armazenamento dos arquivos XML e/ou DACTE sejam feitos localmente.

Após efetuada a cópia do XML de uma máquina para outra, é efetuada outra tentativa do envio, que resulta em sucesso.

E-mail enviado pelo Logix TMS para o e-mail cadastrado na tela principal, anexando a DACTE e o XML protocolado do CTe em questão

3 – Logix TMS: Envio do XML protocolado e da DACTE, durante o cancelamento de um CTe

Esta rotina obedecerá os mesmos parâmetros citados até o momento, diferenciando-se que, ela será executada somente quando for efetuado o retorno do protocolo do cancelamento de um CTe. Abaixo, exemplo dos e-mails enviados pelo sistema:

- Empresa parametrizada para envio do e-mail aos contatos do emitente pagador:

DACTE


XML

- Empresa parametrizada para envio do e-mail aos e-mail principal do emitente pagador:

Como dito nos exemplos anteriores, para o e-mail principal a DACTE e o XML de Cancelamento são enviados de uma única vez.


Observações: