BASES DE DADOS: QUALQUER
Porque dessa análise :
- Ao enviar um CT-e antigo, após a atualização, ocorre a falha:
- 95037 - Não foi possível validar o número da CTe/CTeOS.
PASSOS PARA REPRODUZIR:
- Configurar o EmissorCTe;
- Entrar na aba do CTe Rodoviário;
- Pressionar F1 - Consultar;
- Selecionar um CTe que não foi emitido da lista (que está sem chave);
- Transmitir o CTe;
- Verificar a falha descrita.
Isabella Bressan Bremm - Liberado p/ Implantação
- Liberado.
Isabella Bressan Bremm - Teste OK
Foram realizados os testes das rejeições:
Código retorno: 204 - Rejeição: Duplicidade de CT-e
[nProt:999999999999999][dhAut: AAAA-MM-DDTHH:MM:SS TZD]
- Ao reenviar um CTe que obteve "Código de retorno" 204 do DFe, o sistema verifique se existe um item concluído filtrando por IDEMITENTE e NUMPROTOCOLO. Se encontrar abre a tela informativa dando opção para o usuário:
- Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
- Finalizar CTe com as informações carregadas do item concluído.
- Inclui um registro na tabela concluidos.
- Exclui o item pendente do cte e dfe.
- Cancelar.
- Transmitir com um novo número de CTe.
-
Se não encontrar abre a tela dando opção para:
- Incluir manualmente as informações: Chave, Protocolo e Data autorização.
- Inclui um registro na tabela concluídos.
- Exclui o item pendente do CT-e e DFe.
- Transmitir com um novo número de CT-e.
- Gera um novo número de CT-e e reenvia o item pendente atualizado.
- Cancelar.
-
Código retorno: 206 - Rejeição: Número de CT-e já está inutilizado na Base de dados da SEFAZ
- Ao reenviar um CT-e que obteve "Código de retorno" 206 do DFe, o sistema abre a tela informativa dando opção para o usuário:
- Transmitir com um novo número de CT-e.
- Gera um novo número de CT-e e reenvia o item pendente atualizado.
- Cancelar.
- Transmitir com um novo número de CT-e.
-
Código retorno: 539 - Rejeição: Duplicidade de CT-e, com diferença na Chave de Acesso
[chCTe: [9999999999999999999999999999999999999999999]
[nProt:999999999999999][dhAut: AAAA-MM-DDTHH:MM:SS TZD] - Ao reenviar um CT-e que obteve "Código de retorno" 539 do DFe, o sistema tenta carregar do campo "motivo" a chave, protocolo e data autorização, se conseguir abre a tela informativa dando opção para o usuário:
- Transmitir com um novo número de CT-e.
- Gera um novo número de CT-e e reenvia o item pendente atualizado.
- Utilizar essas informações e finalizar o CT-e.
- Inclui um registro na tabela concluídos.
- Exclui o item pendente do CT-e e DFe.
- Cancelar.
- Transmitir com um novo número de CT-e.
-
Teste ok.
Isabella Bressan Bremm - Certificando
- Certificando.
Olimpio Gonzatto Junior - Encaminhado p/ Certificação
Corrigido.
Obs.: No código 539 faltou direcionar o tipo de retorno inclusão manual para abrir a tela de digitação.
Olimpio Gonzatto Junior - Programando
Verificando
Isabella Bressan Bremm - Devolvido p/ Programação
Com a rejeição 539 Rejeição: Duplicidade de CT-e, com diferença na Chave de Acesso
[chCTe: [9999999999999999999999999999999999999999999]
[nProt:999999999999999][dhAut: AAAA-MM-DDTHH:MM:SS TZD]
Deveria fazer o seguinte:
- Ao reenviar um CTe que obteve "Código de retorno" 539 do DFe, o sistema tenta carregar do campo "motivo" a chave, protocolo e data autorização, se conseguir abre a tela informativa dando opção para o usuário:
- Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
- Utilizar essas informações e finalizar o CTe.
- Inclui um registro na tabela concluídos.
- Exclui o item pendente do CTe e DFe.
- Cancelar.
Porém ao selecionar a opção de "Finalizar o CTe manualmente" ele não abre a tela para informar a chave e número de protocolo.
Isabella Bressan Bremm - Certificando
- Certificando.
Olimpio Gonzatto Junior - Encaminhado p/ Certificação
[Programas]
EmissorCTe.exe (versão: 3.0.45.1, branch: develop, feature: FIS-914).
DFeEcoCTeAdmin.exe (versão: 5.0.0.5, branch: develop, feature: FIS-914).
[Descrição]
Código retorno: 204. (
_*Rejeição: Duplicidade de CT-e
[nProt:999999999999999][dhAut: AAAA-MM-DDTHH:MM:SS TZD]*_
).
Ao reenviar um CTe que obteve "Código de retorno" 204 do DFe, o sistema verifique se existe um item concluído filtrando por IDEMITENTE e NUMPROTOCOLO. Se encontrar abre a tela informativa dando opção para o usuário:
1 - Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
2 - Finalizar CTe com as informações carregadas do item concluído.
- Inclui um registro na tabela concluidos.
- Exclui o item pendente do cte e dfe.
3 - Cancelar.
Se não encontrar abre a tela dando opção para:
1 - Incluir manualmente as informações: Chave, Protocolo e Data autorização.
- Inclui um registro na tabela concluidos.
- Exclui o item pendente do cte e dfe.
2 - Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
3 - Cancelar.
Código retorno: 206. (
Rejeição: Número de CT-e já está inutilizado na Base de dados da SEFAZ
).
Ao reenviar um CTe que obteve "Código de retorno" 206 do DFe, o sistema abre a tela informativa dando opção para o usuário:
1 - Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
2 - Cancelar.
Código retorno: 539. (
_*Rejeição: Duplicidade de CT-e, com diferença na Chave de Acesso
[chCTe: [9999999999999999999999999999999999999999999]
[nProt:999999999999999][dhAut: AAAA-MM-DDTHH:MM:SS TZD]*_
).
Ao reenviar um CTe que obteve "Código de retorno" 539 do DFe, o sistema tenta carregar do campo "motivo" a chave, protocolo e data autorização, se conseguir abre a tela informativa dando opção para o usuário:
1 - Transmitir com um novo número de CTe.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
2 - Utilizar essas informações e finalizar o CTe.
- Inclui um registro na tabela concluidos.
- Exclui o item pendente do cte e dfe.
3 - Cancelar.
Se não conseguir carregar as informações do campo "motivo":
1 - Incluir manualmente as informações: Chave, Protocolo e Data autorização.
- Inclui um registro na tabela concluidos.
- Exclui o item pendente do cte e dfe.
2 - Transmitir CTe com nova numeração.
- Gera um novo número de CTe e reenvia o item pendente atualizado.
3 - Cancelar.
Olimpio Gonzatto Junior - Programando
Implementando
Isabella Bressan Bremm - Devolvido p/ Programação
Ao utilizar a:
- Opção para Adicionar chave e protocolo
A opção de adicionar chave e protocolo ainda não está funcionando corretamente, quando o usuário clicar nessa opção deverá:
- Adicionar um registro dentro da tabela 'tcteitensconcluidos';
- Adicionar a chave de acesso e número de protocolo que foram digitados pelo usuário (na mensagem da rejeição aparece as duas informações);
- O item pendente deve ser deletado tanto do EcoCTe quanto do DFeMonitor.
Isabella Bressan Bremm - Certificando
- Certificando.
Olimpio Gonzatto Junior - Encaminhado p/ Certificação
[Programa]
DFeMonitor.exe (versão: 5.2.2.333, branch: develop, Feature: FIS-914)
EmissorCTe.exe (versão: 3.0.43.1, branch: develop, Feature: FIS-914)
[Descrição]
Arquivo: Monitor.Engine.Dba.Firebird.Custom.pas
Método: procedure TMonitorEngineDbaManagerHandleFirebirdCustom.CallDbi_GenNumero(const Dbi: Monitor.Engine.Dba.Objects.TMonitorEngineDbaItemGenNumero);
Dentro deste método existe uma validação que determina se o registro deve ser atualizado ou não. O Anderson comentou via chat que essa validação serve para evitar que o usuário mande o mesmo número de CTe mais de uma vez para a Sefaz, neste caso, o programa faz uma validação antes de enviar a requisição.
Para reenviar o CTe com um novo número eu tive que ajustar essa validação, o sistema garante que o GID mas só reenvia se o CID mudar. (uma das informações que compoem o CID é o número do CTe, neste caso foi reenviado com um nr. novo).
[Certificação]
Por favor, verificar com o Anderson testes alternativos pois o ponto alterado pode influenciar em outros tipos de reenvio do CTe. Tentar simular o teste que deu origem a implementação do CID.
Olimpio Gonzatto Junior - Programando
Implementando
Anderson Luiz Barbosa da Silva - Encaminhado p/ Programação
DESCRIÇÃO DA FALHA
Falha na emissão do CT-e quando o número já foi utilizado.
O EcoCTe tem um recurso para enviar uma nova numeração ou informar o número do protocolo
Essa tela aparece quando o código de retorno igual a:
- 204
- 206
- 539
CORREÇÃO
- Transmissão com nova numeração
Quando o usuário clicar na opção "Transmitir com nova numeração" essa opção ainda está com o código antigo, quando transmitir o CT-e deverá enviar com uma nova numeração para o DFeMonitor.
- Opção para Adicionar chave e protocolo
A opção de adicionar chave e protocolo não está funcionamento corretamente, quando o usuário clicar nessa opção deverá:
- Adicionar um registro dentro da tabela 'tcteitensconcluidos'
- Adicionar a chave de acesso e número de protocolo que foram digitados pelo usuário (na mensagem da rejeição aparece as duas informações)
- O item pendente deve ser deletado tanto do EcoCTe quanto do DFeMonitor
- Correção ortográfica
Corrigir o erro ortográfico do botão "Transmitir com nova numeração"
JORNADA DO USUÁRIO
- Configurar a base de dados para teste do CT-e
- Selecionar o emitente com o nome "Movistar Operações Logisticas LTDA"
- Abrir a tela do CT-e Rodoviário
- Selecionar o CT-e com o ID = 2
- Clicar para transmitir
Observação:
- Lembrando que a tela só vai aparecer se o status do CT-e estiver igual a 204, 206 ou 539
Anderson Luiz Barbosa da Silva - Analisando
Analisando.
Olimpio Gonzatto Junior - Devolvido p/ Análise
Não foi possível simular a falha.
Por favor anexar as bases para nova tentativa.
Olimpio Gonzatto Junior - Programando
Implementando
Isabella Bressan Bremm - Encaminhado p/ Programação
- Repassando para a programação.
Isabella Bressan Bremm - Analisando
- Analisando.
Isabella Bressan Bremm - Encaminhado p/ Análise