01. DADOS GERAIS

Produto:

TOTVS Backoffice

Linha de Produto:

Segmento:

Módulo:

Programa:

OBF26200: Central de Eventos

OBF26003: Processamento TC2 (novo)

OBF26001: Funções auxiliares

OBF90001: JOB de processamento

País:Brasil
Requisito/Story/Issue (informe o requisito relacionado) :

DBACKRTLGX-3676, DBACKRTLGX-3401, DBACKRTLGX-3511, DBACKRTLGX-3460, DBACKRTLGX-3566, DBACKRTLGX-3565, DBACKRTLGX-3439, DBACKRTLGX-3326, DBACKRTLGX-3529, DBACKRTLGX-3564, DBACKRTLGX-3531



VISÃO GERAL


Implementação completa do sistema de envio e retorno de eventos fiscais via TC2 (TOTVS Colaboração 2.0), incluindo geração de XML no padrão da Nota Técnica da SEFAZ, processamento via JOB de retorno e adequações na interface do usuário para suporte ao novo transmissor.

02. SITUAÇÃO/REQUISITO

2.1 Situação Atual

O sistema atualmente suporta apenas envio de eventos via TSS. Com a necessidade de utilizar o TC2 (TOTVS Colaboração 2.0) como transmissor alternativo, é necessário implementar:

2.2 Requisitos

03. SOLUÇÃO

3.1 Programa OBF26200 - Envio de Eventos via TC2

3.1.1 Ambiente TC2

Alteração na Função de Ambiente:

Função: obf26001_retorna_ambiente

Modificação:

SE vdpr140_usa_TC_sem_TSS = TRUE ENTÃO    

     Buscar ambiente TC2 com vdpr140_get_ambiente_tc   

     Retornar ambiente TC2

SENÃO   

     Continuar processo atual (TSS)

3.1.2 Novo Fonte OBF26003 - Processamento TC2

Criação de Fonte Específico:

  • Nome: OBF26003
  • Função: Processamento completo de envio e retorno via TC2

Função de Tipo de Documento:

obf26003_tipo_doc_tc2(evento)

- Receber código do evento

- Retornar código do tipo documento Neogrid

- Para cancelamento: verificar origem (entrada/saída)

Mapeamento de Eventos para TC2:

Evento

Descrição

Tipo Neogrid

112110

Informação de efetivo pagamento integral

457

112120

Importação em ALC/ZFM não convertida

471

112130

Perecimento durante transporte (fornecedor)

472

112140

Fornecimento não realizado

473

112150

Atualização de Data de Previsão

000

211110

Solicitação de Apropriação de crédito

458

211120

Destinação para consumo pessoal

460

211124

Perecimento durante transporte (adquirente)

474

211128

Aceite de débito na apuração

475

211130

Imobilização de Item

461

211140

Apropriação de Crédito de Combustível

462

211150

Apropriação de Crédito para bens/serviços

464

212110

Manifestação Transferência IBS

465

212120

Manifestação Transferência CBS

466

110001

Cancelamento - Saída

469

110001

Cancelamento - Entrada

470

3.1.3 Processamento de Envio

Alteração na Função obf26200_processa_enviar:

SE m_usa_TC_sem_TSS = FALSE ENTÃO   

     Processamento TSS atual

SENÃO   

     SE vdpr140_copia_arquivo_xml_TC(tipo_documento, relatório, modo_exibição) ENTÃO       

     Obter caminho do arquivo XML copiado       

     Incluir monitoramento TC2       

     Gravar mensagem de sucesso no relatório   

SENÃO       

     Gravar mensagem de erro no relatório

3.1.4 Atualização de Retorno Centralizada

Nova Função: obf26001_atualiza_retorno_evento

Parâmetros da Função:

  • empresa_origem: Empresa origem
  • trans_evento_apuracao: Transação
  • evento: Código do evento
  • status: Status do retorno (A/R/S)
  • id_evento: ID do evento
  • lote: Lote processado
  • protocolo_aut: Protocolo de autorização
  • data_hor_rec_protocolo: Data de retorno

Mapeamento de Status:

  • Status 6: "A" - Autorizado
  • Status 3 e 5: "R" - Rejeitado
  • Status 1, 2 e 4: "S" - Sem retorno

3.1.5 Interface - Ajustes para TC2

Remoção do Botão Retorno:

  • Ocultar botão "Retornar" quando TC2 estiver configurado
  • Exibir mensagem quando nenhum transmissor estiver configurado:

"Configurações do TSS/TC2 não encontradas. Configure para habilitar o envio e retorno de eventos."

3.2 Geração XML Parte Geral - TC2

3.2.1 Nova Função de Versão

Função: obf26001_busca_versao_produto

  • Baseada em vdp9230_busca_versao_produto
  • Adaptada para programa OBF26200
  • Retorno sem caracteres especiais (PIPE)

3.2.2 Alteração na Geração XML

Função: obf26001_gera_xml_parte_geral

Estrutura XML para TC2:

<?xml version="1.0" encoding="UTF-8"?>
<evento xmlns="http://www.portalfiscal.inf.br/nfe
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
        versao="1.00">
    <infEvento Id="[ID_EVENTO]">
        <cOrgao>[ORGAO_AUTOR]</cOrgao>
        <tpAmb>[AMBIENTE]</tpAmb>
        <CNPJ>[CPF_CNPJ]</CNPJ> <!-- ou CPF -->
        <chNFe>[CHAVE_ACESSO]</chNFe>
        <dhEvento>[DATA_HORA_UTC]</dhEvento>
        <tpEvento>[CODIGO_EVENTO]</tpEvento>
        <nSeqEvento>[SEQUENCIA]</nSeqEvento>
        <verEvento>[VERSAO_LAYOUT]</verEvento>
        <detEvento versao="[VERSAO_LAYOUT]">
            <descEvento>[DESCRICAO_EVENTO]</descEvento>
            <cOrgaoAutor>[ORGAO_AUTOR]</cOrgaoAutor>
            <tpAutor>[TIPO_AUTOR]</tpAutor> <!-- Não gerar para cancelamento -->
            <verAplic>[VERSAO_PRODUTO]</verAplic>
            <!-- Informações específicas do evento -->
        </detEvento>
    </infEvento>
</evento>

3.3 JOB - Retorno de Eventos via TC2

3.3.1 Estrutura Geral do JOB

Função Principal: obf26003_processa_arquivos_eventos_ibs_cbs

  • Chamada na função obf90001_processa_job_nfe
  • Antes da função obf90001_disconecta_banco
  • Processa retornos de todos os eventos

3.3.2 Eventos Fiscais e Cancelamento

Funções Específicas por Evento:

Evento 211128:

obf26003_processa_arquivos_211128

- Tipo documento: 475

- Buscar arquivos: '475_*'

- Processar retorno conforme padrão

Eventos 212110 e 212120:

obf26003_processa_arquivos_212110 → Tipo: 465

obf26003_processa_arquivos_212120 → Tipo: 466

Evento 110001 (Cancelamento):

obf26003_processa_arquivos_110001

- Tipos: 469 (saída) e 470 (entrada)

- Processar ambos os tipos na mesma função

3.3.3 Eventos CRE e PAT

Funções Específicas:

obf26003_processa_arquivos_112110 → Tipo: 457

obf26003_processa_arquivos_211130 → Tipo: 461

3.3.4 Eventos FAT

Funções Específicas:

obf26003_processa_arquivos_112130 → Tipo: 472

obf26003_processa_arquivos_112140 → Tipo: 473

obf26003_processa_arquivos_112150 → Tipo: 000

3.3.5 Processamento de Retorno

Estrutura Padrão de Processamento:

  1. Leitura de Arquivos

Buscar arquivos por tipo de documento

Processar cada arquivo encontrado

Extrair informações das TAGs XML

       2. TAGs Extraídas do Retorno:

    • <cStat>: Status do retorno
    • <xMotivo>: Motivo/descrição
    • <chNFe>: Chave de acesso da NFe
    • <tpEvento>: Tipo do evento
    • <nSeqEvento>: Sequência do evento
    • <idLote>: Lote processado
    • <nProt>: Protocolo de autorização
    • <dhRegEvento>: Data/hora do retorno

        3. Busca de Informações

SELECT empresa_origem, num_ar_trans, id_evento, trans_evento_apuracao

FROM obf_evento_apuracao

WHERE evento = [evento_retornado]

AND chave_acesso_nfe = [chave_retornada]

AND sequencia = [sequencia_retornada]

AND status_envio IN ('2','4')

         4. Atualização de Status

Mapeamento cStat para Status:

- cStat = 135 ou 136: \"A\" - Autorizado

- cStat > 200: \"R\" - Rejeitado

- Demais: \"S\" - Sem retorno

Chamar: obf26001_atualiza_retorno_evento

04. DEMAIS INFORMAÇÕES

4.1 Validações

4.1.1 Envio via TC2:

4.1.2 Retorno via JOB:

Processamento de arquivos

Validação por tipo de evento

4.2 Fluxo de Processamento

4.2.1 Envio de Eventos:

- Gerar XML padrão NT SEFAZ  

- Copiar para diretório OUT   

- Incluir monitoramento

4.2.2 Retorno de Eventos:

4.3 Benefícios

4.4 Considerações Técnicas

Configuração TC2:

Monitoramento:

Performance:


05. ASSUNTOS RELACIONADOS

Programas Envolvidos:

Funções TC2 Utilizadas:

Eventos Suportados e origens:

Estruturas de Dados:


06. ASSUNTOS RELACIONADOS