Jump to content

dev botao

Duvida sobre SAT.ConsultarNumeroSessao


OFF-DEV
Go to solution Solved by Daniel Simoes,
  • Este tópico foi criado há 1754 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Prezados,

 

Estou com uma dúvida aqui sobre o comando SAT.ConsultarNumeroSessao,  estou implementando uma compatibilidade com meu appcomercial usando TCP/IP e C# e gostaria de entender em quais circunstâncias eu deveria usar o referido comando?

O manual diz :

"Comando para efetuar a consulta pelo numero da sessão.".  `Testando o comando percebo que recupero dados do cupom emitido por último somente.  

 

 

Abraços

Leandro 

 

 

Link to comment
Share on other sites

  • Fundadores
  • Solution

Você deve usar esse comando, quando SAT retorna com uma Sessão diferente da que você enviou no comando de Entrada (número randômico), ou caso ele não tenha respondido... esse comando deve ser enviado imediatamente após o último comando com a resposta inválida...

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 to comment
Share on other sites

  • Membros Pro

 

Acho que peguei, vou dar um exemplo:

 

  •  Usei o comando CriarEnviarCFe: ele retornou:

[ENVIO]
Arquivo=C:\OFFMON\sat\Vendas\08723218000186\201912\AD35191208723218000186599000092610073614188846.xml
CodigoDeRetorno=6000
NumeroSessao=858175
Resultado=858175|06000|0000|Emitido com sucesso...

  1.  Comparo os valores em destaque vermelho, se eles forem iguais, sinal que o SAT processou corretamente e me devolveu o retorno correto (não preciso usar  SAT.ConsultarNumeroSessao) .
  2. Se o resultado for diferente, uso o comando SAT.ConsultarNumeroSessao(858175) e aguardo o retorno.  Se o comando não identificar a seção, eu descarto a operação e tento enviar o CFSAT novamente.

 

Isso mesmo?

 

Link to comment
Share on other sites

  • Fundadores

Sim, isso mesmo...

lembrando que o ACBrSAT ou a ACBrLibSAT, já automatiza essa verificação, quando a propriedade "ValidarNumeroSessaoResposta := True"

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 to comment
Share on other sites

  • Membros Pro

 

OK, 

mais uma questão quanto a isso, é possível acontecer um travamento no PC que obrigue o usuário resetar o computador no ato de tratar o número da seção de retorno, perdendo assim o seu controle podendo gerando duplicidade de cupom?  Se sim, é estatisticamente desnecessário se preocupar com isso? Ou daria pra tratar também?

 

Abraço

Link to comment
Share on other sites

  • Fundadores

Você poderia salvar o último número de Sessão enviado em seu BD... e assim que o sistema for restabelecido, usar esse número para uma consulta 

  • Like 1
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 to comment
Share on other sites

  • Membros Pro

 

OK,  mas isso me deixa com mais uma dúvida,

 

Estou usando a conexão via TCP/IP, estou passando o conteudo .ini do cupom diretamente através do comando CriarEnviarCFe para não ter necessidade de criar arquivos de envio e retorno.  O número da sessão (que me parece gerado pelo ACBR neste caso) geralmente vem após o envio do comando pelo próprio canal de comunicação Stream.Read/Flush. Se ocorrer um crash na aplicação ou o PC apagar justamente ao retornar as informações de sessão e dados do cupom xml, como eu não gerei o número de sessão e sim o ACBR,  como eu poderei obter qual foi o número de sessão ultimo que o ACBR usou?  Ou teria como eu informar ao ACBR o número de sessão desejada antes dele enviar os dados do CFSAT via comando CriarEnviarCFe (usando TCP/IP)?

 

Não sei se fui claro o suficiente, qquer coisa dá um toque.

Abraço

 

Link to comment
Share on other sites

  • Fundadores

Ligue a propriedade "ValidarNumeroSessaoResposta", nas configurações da aba SAT

https://acbr.sourceforge.io/ACBrMonitor/DadosdoSATCFe.html

para ter o seu próprio controle de Sessão tem um comando onde você pode informar qual será a próxima sessão 

https://acbr.sourceforge.io/ACBrMonitor/SATSetNumeroSessao.html

 

  • Like 1
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 to comment
Share on other sites

  • Membros Pro

 

Ahhh, com este comando de setar a seção facilita tudo, ele não tinha no manual .chm que vem com o instalador, por isso não achei.   

 

Valeu!!!!  Acho que esclareceu bem, qquer dúvida volto noutro tópico.   Abraços.

  • Like 2
Link to comment
Share on other sites

  • Este tópico foi criado há 1754 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...