Ir para conteúdo
  • Cadastre-se

dev botao

Identificador de Tipo do Último Documento em ACBrECFVirtual


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

Recommended Posts

Boa tarde amigos,

Prosseguindo na conversão de meu PAF-ECF para NFC-e, encontrei mais um provável bug:

Se eu abrir um cupom não-fiscal (para um recebimento antecipado, por exemplo) e por algum motivo a aplicação finalizar. Ao entrar novamente no sistema, eu leio o estado do ECF e, em caso de necessidade de interação, apresento ao operador esse estado e pergunto o que ele deseja que seja feito (ignorar, emitir LeituraX, emitir ReducaoZ, fechar o cupom, etc).

O ECFVirtual identifica que existe um cupom em estado de pagamento mas, embora encontre no arquivo .ini a seção [cupom_comprovantes_nao_fiscais], estranhamente informa que o tipo do último documento é docNenhum e o sistema fica sem saber o que fazer.

Em anexo o Log dos componenets ECF e POS_PRINTER além do .ini do ECF Virtual.

ECF.LOG

MaqFis004.ini

POS_PRINTER.LOG

Link para o comentário
Compartilhar em outros sites

  • Fundadores

O Estado parece correto...

-- 30/06 14:23:12:106 GetEstado estPagamento

Qual é exatamente o comando que você envia, para ler o estado último documento ? Qual é o retorno atual, e qual seria o esperado ?

Como se comporta um ECF real, no mesmo cenário ? (se não tiver um ECF real, pode testar com um Emulador)

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

Sim Daniel, o estado do ECF está corretíssimo, faço a leitura com CASE ACBRECF1.Estado OF...

O problema é quando preciso saber o tipo do último documento para desfazer as operações fiscais ou não-fiscais.

Utilizo ACBrECFVirtualNFCe.ECFVirtualClass.TipoUltimoDocumento of... e ele está retornando docNenhum. Na versão ECF eu não tenho implementada essa funcionalidade, inclusive eu tropecei nessa propriedade estudando o objeto virtual.

Se não for esse o caminho correto ou se não existir ainda esse recurso disponível, percebi que posso carregar o arquivo .ini e verificar se exisate a seção [Cupom_Comprovantes_Nao_Fiscais]. Existindo essa seção, o último documento foi do tipo não-fiscal. Só quero ter certeza de que não existe outro meio de ter essa resposta antes de criar um método para isso.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Isso ocorre porque o método "GetTipoUltimoDocumento", ainda não foi implementado em TACBrECFVirtualClass.. então ele retorna o método parão, definido em TACBrECFClass

Se desejar implementar o mesmo, posso ajudar na analise...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Seria necessário implementar o método " GetTipoUltimoDocumento", em ACBrECFVirtual.pas... Olhar como esse método foi implementado em ACBrECFEpson.pas pode dar uma ideia...

mas no caso do ECFVirtual, penso que poderíamos analisar o conteúdo da memória do INI, e "intuir"o último documento emitido...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

Bom dia Daniel, Dei uma olhada no método da EPSON. Ele se baseia em um retorno do dispositivo e precisamos simular esse retorno através de uma leitura do arquivo .INI. Pelo menos diferenciar entre CNF e CF fica fácil, depende apenas de verificar a existência da seção [Cupom_Comprovantes_Nao_Fiscais]. Existindo a seção, é CNF, não existindo a seção é CF ou outro tipo.

Acho que o politicamente correto seria criar na seção [Variaveis] uma nova propriedade chamada "Tipo" para complementar a propriedade "Estado", isso deixaria bem claro o "tipo" do documento que se encontra no "estado" indicado.

Existe algum objeto ou função que eu possa chamar de dentro de ACBrECFVirtual.pas que me retorne a existência de uma seção e/ou seu conteúdo?

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Oi Paulo... acho que não precisamos examinar o .INI, mas sim as variáveis internas da Classe.. O mais correto, seria realmente criar uma nova variável interna, que deveria ser manipulada pelos diversos métodos do ACBrECFVirtual, atualizando-a, de acordo com o método que acabou de ser executado...

 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Link para o comentário
Compartilhar em outros sites

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