Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

boa noite, gostaria de verificar se teria a possibilidade de evitar este tipo de erro : uso indevido.

 

Utilizo D7, Estado de SP, e ambiente de Homo e Produção acontece.

Abaixo a rotina de envio do CT-e:

 

 

 //Gera XML

 GerarCTe(CodCTRC, SequenciaCTE);

 //tenta enviar ct

 fmMenu.ACBrCTe1.Enviar(CodLote, false);

 //manda imprimir

 fmMenu.ACBrCTe1.Conhecimentos.Imprimir;

 

Obrigado.

Postado

Obrigado, pelo resposta.

 

Tenho uma duvida, no meu caso o numero do lote quando eu envio eu sempre passo ID da tabela de Conhecimento ou seja ver o caso da minha duvida e veja se estou errado:

 

1-  Primeira vez que tento enviar CT-e :

 

CodLote:= cdsCTRCID.asInteger;  //ex: 12

fmMenu.ACBrCTe1.Enviar(CodLote, false);

 

*** dai da um erro qualquer e não aceito o envio

 

2- Segunda vez que tento enviar CT-e:

 

CodLote:= cdsCTRCID.asInteger;  //ex: 12

fmMenu.ACBrCTe1.Enviar(CodLote, false);

 

A  minha duvida é sempre que eu tentar enviar CT-e eu tenho que mudar CodLote ? tenho que criar no meu sistema para auto incrementar este Código para ser único no envio, e por isto estou recebendo o erro : Uso Indevido ?

 

*** Desculpa não sei se fui claro , Obrigado.



 

  • Consultores
Postado

Bom dia Walter,

 

Vamos separar o seu problema em 2.

 

1. "dai da um erro qualquer..."

 

Ao enviar um lote de CT-e para SEFAZ, pode ocorrer varios problemas, um deles é a SEFAZ receber o lote, processar o mesmo e por algum motivo não retornar o protocolo de autorização.

Neste caso não devemos enviar o lote novamente e sim realizar uma consulta para obter o protocolo.

Pode ocorre da SEFAZ, nem sequer receber o lote, neste caso devemos enviar novamente.

Pode ocorrer rejeição de um ou mais CT-e continos no lote, neste caso devemos avaliar a rejeição de cada um efetuar a correção e enviar novamente somente os CT-e que foram rejeitados em um novo lote.

 

Como você pode ver cada caso é um caso e o procedimento a ser tomado é diferente.

 

2. com relação ao numero do lote que você chama de CodLote, na minha aplicação eu controlo esse numero, fazendo que ele seja incrementado de 1 a cada lote enviado.

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

Ítalo, boa tarde.

 

Obrigado pela resposta.

 

Quando eu envio um CT-e e retorna algum tipo de erro mas ele recebe o lote e por algum motivo da um erro , dai o que acontece no meu sistema eu tento enviar novamente da erro de duplicidade ( no meu sistema aparece uma janela com descrição do erro ex:

 

Dai neste caso como eu poderia executar esta consulta pq quando da o erro o sistema para no erro, como eu poderia pegar informações do lote enviado para retornar o uso do CT-e

não sei se fui claro no meu problema , mas te agradeço se poder me ajudar .

 

Relatório de erros gerado pelo Sistema.

--------------------------------------------------

Descrição do erro..: Conhecimento(s) não confirmado(s):

12->Rejeicao: Duplicidade de CT-e [nRec:351000003094579]

 

Código erro Windows: 0

Sistema............: C:\RW Software\RW_Omaha.exe

Versão.............: 1.0.0.0

Empresa............: Omaha Transportes

Usuário ativo......: LUANA

DATA/HORA: 28/03/2013 - 14:50:33

--------------------------------------------------

Informações sobre Erro

Erro chamado pelo objeto : Panel7

Erro gerado pelo form : fmMovimentoConhecimento



 

  • Consultores
Postado

Boa tarde Walter,

 

Como dito anteriormente, se ocorre o envio, mas não obtemos o retorno com o protocolo de autorização, não devemos enviar novamente.

 

Caso contario ocorre a rejeição de Duplicidade.

 

Você deve fazer com que a sua rotina seja capaz de detectar se ocorreu alguma falha e tratar essa falha da melhor maneira possível.

 

Se você pesquisar no fórum acredito que vai encontrar alguns postes tratando sobre o assunto.

 

Dica, mesmo se a rotina apresentada for para a NFe, você pode aproveitar a idéia para o CTe, pois existe uma semenhaça muito grande entre os comandos.

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

Tenho uma duvida gostaria de verificar com fórum se poder me ajudar.

 

//Preenche o componente

 GerarCTe(CodCTRC, SequenciaCTE);

 

 // Gera o XML, Assina e Salva o Arquivo
 fmMenu.ACBrCTe1.Conhecimentos.Assinar;

 

 // Valida os dados do XML salvo
 fmMenu.ACBrCTe1.Conhecimentos.Valida;

 ExisteCTE_Nao_Protocolado:= false;

 

 //Aqui eu envio CT-e

 fmMenu.ACBrCTe1.WebServices.Envia(CodLote);
 
 sRecibo   := fmMenu.ACBrCTe1.WebServices.Enviar.Recibo;
 sStat     := IntToStr(fmMenu.ACBrCTe1.WebServices.Enviar.cStat);
 sMotivo   := fmMenu.ACBrCTe1.WebServices.Enviar.xMotivo;
 sDataHora := DateTimeToStr(fmMenu.ACBrCTe1.WebServices.Enviar.dhRecbto);

 

 //Aqui e a minha duvida assim que eu envio com o comando acima eu preciso executar o comando abaixo em negrito?

pq na unit acbrCTEWebServices já não faz isso após enviar o lote ?

 

 fmMenu.ACBrCTe1.WebServices.Retorno.Recibo := sRecibo;
 fmMenu.ACBrCTe1.WebServices.Retorno.Executar;

 

 //Retorno do lote individual do CT-e
 for i := 0 to (fmMenu.ACBrCTe1.WebServices.Retorno.CteRetorno.ProtCTe.Count -1) do
 begin

  sArquivo      := fmMenu.ACBrCTe1.Conhecimentos.Items.NomeArq;
  sDataHora     := DateTimeToStr(fmMenu.ACBrCTe1.WebServices.Retorno.CteRetorno.ProtCTe.Items.dhRecbto);

 

end;

...

...

  • Este tópico foi criado há 4257 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.

The popup will be closed in 10 segundos...