Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Prezados, sou novo no mundo ACBR. Por isso, peço a ajuda de vocês para o seguinte problema.
Tenho um aplicativo comercial que faz a emissão da NFCe e TEF com os obejtos ACBR. Todavia, me deparei com o seguinte problama:

 - Ao enviar um NFC-e e a mesma ser rejeitada por um código de barras errado ou NCM inexistente, eu queria poder, remover o item problemático da venda e reenviar a NFCe sem o item. Mas, ao tentar remover o item o objeto ECF diz que o estado a impressora não é VENDA. Pois, como ele simula um ECF, então, supostamente o cupom fiscal está fechado.
Existe a possibilidade de mudar este estado da impressora para que assim eu possa remover o item via comando cancelaItem e reenviar a NFCE?
Se alguém puder me ajudar eu agradeço. (Andei olhando o código fonte do objeto, mas não me acho ainda capaz efetuar mudanças nele).
Esse problema tem me causado muito transtorno. Pois, o usuário acaba tendo que CANCELAR a venda. E quando ela tem muitos itens, já viu como o cliente fica.
Muito obrigado por toda ajuda que me for dada.

  • Consultores
Postado

Mas por que tu está emitindo já na impressora antes de finalizar a NFC-e?

faça a venda toda e depois de validado o xml  e então imprima em uma vez

  • Curtir 1

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
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 !!

Postado

Olá Juliomar. Muito obrigado pela resposta. O detalhe foi que reutilizei os códigos PAF-ECF para impressão do TEF e algumas outras coisas. Na verdade, a NFC-e só é impressa no final do processo. Mas, como uso o objeto ECF para abrir a venda (abre cupom), cancela item, sub-totalizar etc, ao final da venda preciso fechar (fechar cupom). Pois, não sei como fazer a impressão do TEF sem usar o objeto ECF.

  • Consultores
Postado

Entendi! chegou a debugar para propor alguma sugestão de correção?

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
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 !!

  • Solution
Postado

Aconselho fazer as validações NCM, Aliquota, CST/CSOSN, CFOP etc. no momento que estiver sendo inserido cada item no cupom. mas sei que tem algum erros que 
podemos não ter tratado, no meu caso se o erro for diferente das validações acima eu trato o cupom fiscal com OFFLine/Contigência e imprimo o cupom e posteriormente meu sistema trata cada erro retornado pela sefaz. mas caso queira realmente fazer o tratamento proposto nesse tópico de remover o item etc deverá fazer as seguintes configuração no arquivoINI do ACBrVirtualNFCe e no seu sistema antes de enviar ao sefaz novamente.

1º Definir a chave Estado = 3 {Venda} pois nesse momento ele ta como Estado=5 {Subtotalizado}
2º Definir a chave TotalPago = 0
3º Excluir toda a seção Cupom_Pagamento
4º Remover o item que deseja exonerar da venda-nesse passo você remove o item do seu sistema 
5º Chamar novamente o ACBrECF.FechaCupom() para que o componente efetue o envio da NFCe.

11 minutos atrás, Warquia Pereira disse:

Aconselho fazer as validações NCM, Aliquota, CST/CSOSN, CFOP etc. no momento que estiver sendo inserido cada item no cupom. mas sei que tem algum erros que 
podemos não ter tratado, no meu caso se o erro for diferente das validações acima eu trato o cupom fiscal com OFFLine/Contigência e imprimo o cupom e posteriormente meu sistema trata cada erro retornado pela sefaz. mas caso queira realmente fazer o tratamento proposto nesse tópico de remover o item etc deverá fazer as seguintes configuração no arquivoINI do ACBrVirtualNFCe e no seu sistema antes de enviar ao sefaz novamente.

1º Definir a chave Estado = 3 {Venda} pois nesse momento ele ta como Estado=5 {Subtotalizado}
2º Definir a chave TotalPago = 0
3º Excluir toda a seção Cupom_Pagamento
4º Remover o item que deseja exonerar da venda-nesse passo você remove o item do seu sistema 
5º Chamar novamente o ACBrECF.FechaCupom() para que o componente efetue o envio da NFCe.

Ressalvas:

Após o 3º passo deve solicitar o componente a re-leitura do novo Estado do ECF conforme modificado no passo 1; Ex: ACBrECFVirtualNFCe.LeArqINI e posteriormente seguir o 4º passo em diante.

Obs.: não aconselho remover o item, pois se o cliente efetuou a compra no cartão e o mesmo estiver aprovado, o mesmo vai ficar diferente entre o Valor aprovado no cartão e o total da venda pois houve um ou mais itens removidos da venda, a sugestão é tratar esse cupom como OffLine/Contigência e posteriormente enviar o mesmo ao sefaz após a devida correção

  • Obrigado 1

Warquia Pereira
Fundador | Viva Sistemas
Especialista em Automação Comercial e Desenvolvimento Fiscal
Contribuidor ACBr
MobiPDV • Self Checkout • Integrações Fiscais
www.vivasoftware.com.br

Postado

 

Em 12/01/2017 at 23:19, Warquia Pereira disse:

Aconselho fazer as validações NCM, Aliquota, CST/CSOSN, CFOP etc. no momento que estiver sendo inserido cada item no cupom. mas sei que tem algum erros que 
podemos não ter tratado, no meu caso se o erro for diferente das validações acima eu trato o cupom fiscal com OFFLine/Contigência e imprimo o cupom e posteriormente meu sistema trata cada erro retornado pela sefaz. mas caso queira realmente fazer o tratamento proposto nesse tópico de remover o item etc deverá fazer as seguintes configuração no arquivoINI do ACBrVirtualNFCe e no seu sistema antes de enviar ao sefaz novamente.

1º Definir a chave Estado = 3 {Venda} pois nesse momento ele ta como Estado=5 {Subtotalizado}
2º Definir a chave TotalPago = 0
3º Excluir toda a seção Cupom_Pagamento
4º Remover o item que deseja exonerar da venda-nesse passo você remove o item do seu sistema 
5º Chamar novamente o ACBrECF.FechaCupom() para que o componente efetue o envio da NFCe.

Ressalvas:

Após o 3º passo deve solicitar o componente a re-leitura do novo Estado do ECF conforme modificado no passo 1; Ex: ACBrECFVirtualNFCe.LeArqINI e posteriormente seguir o 4º passo em diante.

Obs.: não aconselho remover o item, pois se o cliente efetuou a compra no cartão e o mesmo estiver aprovado, o mesmo vai ficar diferente entre o Valor aprovado no cartão e o total da venda pois houve um ou mais itens removidos da venda, a sugestão é tratar esse cupom como OffLine/Contigência e posteriormente enviar o mesmo ao sefaz após a devida correção

Warquia, você faz a validação do NCM pelo objeto TACBRNCMs? OU de outra forma?

Postado

Minha validação e mais simples, apenas verifico o tamanho do NCM(8Digito), numeros 11111111, 22222222....9999999 etc.

Warquia Pereira
Fundador | Viva Sistemas
Especialista em Automação Comercial e Desenvolvimento Fiscal
Contribuidor ACBr
MobiPDV • Self Checkout • Integrações Fiscais
www.vivasoftware.com.br

Postado
18 horas atrás, Warquia Pereira disse:

Minha validação e mais simples, apenas verifico o tamanho do NCM(8Digito), numeros 11111111, 22222222....9999999 etc.

Muito obrigado Warquia. Suas dicas me ajudaram muito.
Que Deus abençoe tua vida.

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