Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4823 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Boa tarde, estou com um problema no ct-e, tenho o xml de retorno que,

ao consultar, o sistema retorna que a chave é diferente da cadastrada,

na hora de envio houve problema de conexao e o cliente tentou enviar novamente,

e sobrescreveu a chave original autorizada,

alguém sabe se é possível fazer consulta sem ter a chave? Já tentei de tudo e não descubro

como resover isso.

Obrigado,

Julian Luís

  • Consultores
Postado

Os últimos 10 digitos da chave é composto por 9 digitos do código aleatório e 1 Digito verificador.

O código aleatório pode até ser igual ao numero do conhecimento, se ocorreu de gerar uma nova chave é por que você esta gerando um numero aleatório para o código aleatório.

A minha aplicação tambem gera um numero aleatório, a unica diferença é que eu salvo esse numero no banco de dados junto com os demais dados do conhecimento.

Desta forma ao gerar novamente o XML eu leio esse numero do banco de dados e passo para o componente, campo: cCT (código aleatório do Conhecimento de Transporte).


   Ide.cCT   := DM_CNT.Conhec2CTChave.AsInteger;  // Código Aleatório

Você não tem salvo o primeiro XML cujo envio não foi bem sucedido? É para ter.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • 2 semanas depois ...
Postado

Bom dia Italo, eu tenho 2 xmls do mesmo cte, ambos com chaves

inexistentes na receita, estou tentando entrar em contato com

eles pra ver como resolvo isso, e preciso melhora meu sistema

pra nao acontece mais pois a internet do meu cliente

é muito, muito estavel ou instável, e isso ta causando os transtorno

Obrigado,

Julian

Postado

Doni, Ambos os 2 xmls que tenho vão somente até a assinatura

...

Esta que é a questão, o xml protocolado foi sobrescrito, quando o cliente tentou

novo envio do cte já aprovado.

Obrigado

  • Consultores
Postado

Boa tarde Julian,

Se o CTe gerado e assinado por último sobrescreveu o que estava inclusive protocolado é por que a chave é a mesma,

sendo assim você pode carrega-lo usando o comando LoadFromFile do componente e depois realizar a consulta:


  // Carrega para o componente os dados do arquivo XML 

  // NomeArquivo é uma variável string que contem o caminho + o nome do arquivo

  ACBrCTe1.Conhecimentos.Clear;

  ACBrCTe1.Conhecimentos.LoadFromFile(NomeArquivo);


  // Realiza a Consulta na SEFAZ protocolando o arquivo, ou seja atualiza o XML

  // com o protocolo de autorização ou de cancelamento

  ACBrCTe1.Consultar;


  // Carrega para o componente os dados do arquivo XML agora protocolado

  ACBrCTe1.Conhecimentos.Clear;

  ACBrCTe1.Conhecimentos.LoadFromFile(NomeArquivo);


  // Imrime o DACTe

  ACBrCTe1.Conhecimentos.Imprimir;

Uma dica para evitar o ocorrido:

Inclua um campo chamado Status na tabela que contem os dados do conhecimento, esse campo pode assumir os seguintes valores:

G = Gravado

E = Enviado

A = Autorizado o Uso (quando o XML recebe as tags do protocolo de Autorização)

C = Cancelado (quando o XML recebe as tags do protocolo de Cancelamento)

Você deve atualizar esse campo a medida que os passos vão sendo executados.

Desta forma um registro de um conhecimento com Status = A significa que o XML foi gerado, assinado, validado, enviado e protocolado, logo no maximo ele pode ser cancelado ou ter o seu DACTe reimpresso ou o XML ser enviado por e-mail para o tomandor do serviço.

Espero ter ajudado

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Boa tarde Ítalo, obrigado pelas dicas, em relação à consulta pelo componente,

eu já tinha feito mas retorna que a chave é diferente da cadastrada.

Julian

  • Este tópico foi criado há 4823 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.