Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao enviar Lote ACBrNFSeX provedor Tecnos


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 1136 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Italo, Efetuei um teste pelo ERP enviando duas notas pelo componente antigo usando os schemas 2.01 Tecnos e o envio foi normalmente.

Não sei mais que teste podemos fazer, fico no aguardo de mais orientações.

Até.

  • Consultores
Postado

Bom dia Marcelo,

É bem provável que o componente antigo não esteja validando o lote antes do seu envio.

Já o novo realiza a validação.

Com os Schemas que temos não é possível validar um lote com 2 ou mais Rps.

Podemos seguir dois caminhos:

1. Alterarmos os Schemas;

2. Solicitar ao provedor Schemas atualizados.

No meu entendimento o correto é solicitar ao provedor os Schemas atualizados.

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

Bom dia Italo.

Enviei um e-mail para o provedor falando sobre estas questões, assim que tiver um posicionamento lhe retorno. 

Porem queria ver com você se não existe a possibilidade de deixar sem a validação assim como é feito no componente antigo?

Obrigado.

Postado

Boa tarde 

Estava fazendo um teste comentando a linha que faz a validação e as notas foram enviadas normalmente com algumas resalvas.

1 - Percebi que o consulta lote apos envio não conseguiu fazer a consulta (não debuguei para saber o motivo)

2 - Não gerou o arquivo xml da nota. Somente apos consultar o RPS por RPS.

Seria possivel talvez criar uma propriedade tipo "ValidaNFSeAntesEnvio"?

 

  • Consultores
Postado

Boa tarde Marcelo,

O problema de criar essa propriedade, pode fazer com que o desenvolvedor ative ela para um provedor que não disponibilizou os Schemas, neste caso vai ocorrer um erro.

Não vejo com bons olhos criar essa propriedade.

Como lhe disse, o correto é o provedor fornecer os Schemas atualizados, pois o que temos não prevê o envio de 2 ou mais Rps.

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 @Ita Júnior 

Entrei em contato com o provedor por telefone e email conforme sugeriu mas não obtivemos nenhuma resposta até agora.

Diante disto, efetuei algumas alterações em duas units do componente para atender as nossas  necessidades, e por enquanto está funcionando para todos os testes que fiz.

Estou enviando as units caso ache interessante analizar os código.

1- ACBrNFSeXProviderBase.pas (Procedure ValidarSchema)

2- ACBrNFSeXProviderABRASFv2.pas (procedure TratarRetornoConsultaNFSeporRps)

Os códigos estão com os comentários.

 

ACBrNFSeXProviderABRASFv2.pas ACBrNFSeXProviderBase.pas

  • Consultores
Postado

Bom dia Marcelo,

Fiz uma alteração no Schema de envio de lote para que ele aceite um lote contendo 1 ou mais Rps.

Logo a sua alteração em ACBrNFSeXProviderBase não se faz necessário.

Outra coisa, temos que evitar ao máximo os If provedor (...) 

Não compreendi direto a sua alteração na unit ACBrNFSeXProviderABRASFv2, pois o ConsultarNFSePorRps por via de regra não tem como requisito carregar o XML do Rps.

Você esta checando se tem algum tem algum documento com o numero da NFS-e ou do Rps.

Me explica melhor o motivo dessa alteração.

Detalhe importante os seus fontes estão desatualizados.

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 @Ita Júnior

Vou atualizar os schemas, obrigado pela atenção neste caso.

Sobre  a unit ACBrNFSeXProviderABRASFv2, é um pouco dificil explicar mas vamos lá, no nosso caso não temos um numero de nota e outro de RPS, ambos são enviados o mesmo para a nota e RPS, porem se por algum motivo ou outro der algum problema com esta numeração, no provedor a numeração da nota vai seguir incrementando de 1 a 1, porem o RPS é somente validade se não tem o mesmo. Então quando alimentamos o Componente o numero da nota e RPS são o mesmo, após a consulta, o componente da um find pelo numero da nota, caso não encontre procura pelo RPS, como falei, adaptei as nossas necessidades.

A alteração que fiz, se faz necessária quando enviamos um lote e logo apos fizemos a consulta nota por nota ainda com o componente alimentado. O código original, dava um clear na procedure tratarRetornoConsultaNFSeporRps, quando é consultado somente uma nota, funciona, quando o componente já tem algo, ai não funciona.

Não sei se consegui explicar.

 

Postado

Boa tarde @Ita Júnior

Somente para dar um feedback sobre a alteração do schema que passaste funcionou perfeitamente. Obrigado pela atenção em alterar o schema.

Porem para o nosso caso ainda continuo com a alteração personalizada na unit ACBrNFSeXProviderABRASFv2, procedure TratarRetornoConsultaNFSeporRps para suprir nossas necessidades. Na verdade, comentando a linha //TACBrNFSeX(FAOwner).NotasFiscais.Clear; no nosso caso já funcionaria, as demais alterações foram preventivas.

Abraço.

  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 2
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 1136 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.