Páginas filhas
  • TSS 3.0 - Processos de envio de e-mail


CONTEÚDO

  1. Visão Geral
  2. Configuração
  3. Fluxograma do processo de envio de e-mail 
  4. Tabelas utilizadas


01. VISÃO GERAL

Este documento tem como objetivo detalhar os dois tipos de processo de envio de e-mail existentes na arquitetura do TSS 3.0.

Recentemente o processo de envio de e-mail utilizado no TSS 3.0 foi adequado para que seja possível separá-lo dos demais processamentos da fila (TSSTR1), assim nascendo uma nova fila de registros dedicada ao envio de e-mail (TSSTR3).  

Para que este novo processo de envio de e-mail em fila separada seja habilitado, será necessário alterar uma configuração no sistema, que por padrão é mantido com o legado (envio de e-mail na mesma fila de processamento de documentos).

O objetivo da separação do processo de envio de e-mail das demais etapas de processamento da fila (TSSTR1) é realizar as transmissões dos documentos eletrônicos de forma otimizada, deixando o envio de e-mail para um envio posterior, não interferindo na fila de processamento.


Importante

Esta solução já está disponível em expedição continua do ambiente TSS: Transmissão de Documentos Eletrônicos


02. CONFIGURAÇÃO

O processo de envio de e-mail do TSS 3.0 por padrão está habilitado para realizar a operação do processo legado, onde a etapa do envio de e-mail ainda é realizada pela fila de transações (TSSTR1). Para separar o envio de e-mail da fila de processamento, basta acessar TSSINTERFACE e clicar nas opções: Configuração / Entidades / Configurar conforme tela baixo: 


 

Em seguida, na pasta Geral, no campo Processo de envio de e-mail selecione a opção desejada e confirme. 

As opções são: 

1=Transações do TSS (TSSTR1) - A etapa de envio de e-mail será mantida no modelo padrão atual (legado), utilizando a mesma fila de processamento de documentos (TSSTR1)

2=Exclusivo e-mail (TSSTR3) - A etapa de envio de e-mail será desviada para a nova fila exclusiva para envio de e-mails (TSSTR3), separando assim esta etapa dos demais processos do documento eletrônico (TSSTR1) (recomendado).



Importante

Ao definir o processo de envio de e-mail, o TSS irá aplica-lo para todas as entidades de modo geral. Em outras palavras, todas as entidades presentes no TSS realizarão de forma igual o processo de envio de e-mail (ou pelo legado ou através do novo processo de envio de e-mail).


03. FLUXOGRAMA DO PROCESSO DE ENVIO DE E-MAIL

Aqui serão detalhados os fluxos, de maneira bem simplificada, do processo legado e do novo processo de envio de e-mail do TSS 3.0.

A definição do processo de envio de e-mail se inicia na criação do registro na tabela de fila de transações do TSS (TSSTR1). Após o TSS receber a requisição do ERP para a transmissão de um documento fiscal eletrônico, por exemplo NF-e, o sistema ao criar o registro na fila (TSSTR1) irá marcar um campo (PROCMAIL) com a opção definida naquele momento para envio de e-mail (1=legado / 2=fila separada). Conforme fluxo abaixo:


Uma vez definido processo ao qual será submetido o registro, o TSS ao iniciar o processamento da fila (TSSTR1), irá passar pelas etapas que compõem o processo como um todo de uma transmissão de documento, aqui chamado de subprocesso (subproc).

Cada subprocesso será executado na fila, até chegar na etapa de envio de e-mail. Neste momento o sistema irá verificar o campo PROCMAIL presente na TSSTR1 para identificar o que será realizado: o envio de e-mail ou a gravação de um novo registro na tabela de fila de e-mail (TSSTR3). 


Execução por legado

Caso o campo PROCMAIL esteja como 1 (legado), o subprocesso de envio de e-mail será realizado na mesma fila de processamento (TSSTR1). 


Execução por novo processo

Caso o campo PROCMAIL esteja como 2 (e-mail em fila separada), o subprocesso irá realizar a gravação do registro na nova tabela de fila de e-mail (TSSTR3). Neste haverá um novo processamento em paralelo (não é necessária nenhum atualização de appserver.ini) que realizará o envio de e-mail utilizando registros da nova fila de envio de e-mail (TSSTR3). 


Em ambos os casos, após execução deste subprocesso, o registro passará para a próxima etapa da fila. Caso esta seja a última etapa, será realizada a gravação do registro na tabela de histórico (TSSTR2), onde também possui o campo de PROCMAIL para identificação do processo na tabela de histórico.


Abaixo fluxograma simplificado dos passos descritos acima. Todos os passos pertencem a fila de processamento (TSSTR1) do TSS 3.0:

Quando o campo PROCMAIL presente na tabela de fila de processamento/transação do TSS (TSSTR1) estiver como 2 (novo processamento de envio de e-mail), após a inclusão do registro na tabela de fila de envio de e-mail (TSSTR3), no sistema haverá uma nova task de processamento paralelo responsável por ler os registros da tabela TSSTR3 (fila de envio de e-mail) e enviar os e-mails pendentes.

O job responsável por processar a fila de e-mail é o TSSTaskTR3 presente na tabela TSS0010. Em conjunto com esse job, há outro, o TSSTR3Cleaner, responsável pela limpeza dos registros marcados como deletado na tabela TSSTR3, evitando assim que a tabela acumule dados. 


Abaixo fluxograma simplificado deste processo:


Importante

Por se tratar de uma marca/controle realizado no próprio registro da TSSTR1, não há problema de atualização em meio a processamentos em andamento, visto que o novo comportamento, caso habilitado em meio a operação, surtirá efeito somente para novos registros entrantes. 


04. TABELAS UTILIZADAS

  • TSSTR1 - Transações TSS
  • TSSTR2 - Histórico de Transações TSS
  • TSSTR3 - Envio de e-mail TSS