Jump to content

Sequencia do CUPOM SAT


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

Recommended Posts

  • Membros Pro

Srs,  notei que alguns cupons SAT apos envio não tem erros mas tambem nao retorna informação fica como se tivesse aguardando apos um tempo o cliente envia novamentre ai gera um segundo cupom mas o primeiro foi valido

processado com sucesso na sefaz.

Existe alguma possibilidade de retorno valido diferente de 6000? 

  if ACBrSAT1.Resposta.codigoDeRetorno = 6000 then
  begin
    LoadXML( ACBrSAT1.CFe.AsXMLString, mRecebido );
    PageControl1.ActivePage := tsRecebido;

end;

Link to comment
Share on other sites

  • Membros Pro
1 minuto atrás, MSX disse:

Srs,  notei que alguns cupons SAT apos envio não tem erros mas tambem nao retorna informação fica como se tivesse aguardando apos um tempo o cliente envia novamentre ai gera um segundo cupom mas o primeiro foi valido

processado com sucesso na sefaz.

Existe alguma possibilidade de retorno valido diferente de 6000? 

  if ACBrSAT1.Resposta.codigoDeRetorno = 6000 then
  begin
    LoadXML( ACBrSAT1.CFe.AsXMLString, mRecebido );
    PageControl1.ActivePage := tsRecebido;

end;

Tem como você anexar um log gerado pelo ACBrSAT e citar um dos momentos (se possível data e hora) onde aconteceu o problema ?

Veja também se esse tópico ajuda...
https://www.projetoacbr.com.br/forum/topic/35467-sat-duplicando-cupons/

  • Like 1
Equipe ACBr Sérgio Assunção
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

[email protected]

Link to comment
Share on other sites

  • Fundadores

Sempre chame ConsultarStatusOperacional, antes de enviar a venda... se a resposta desse comando não for válida (diferente de 10000)... não envie a venda, e solicite ao usuário para corrigir o problema no SAT

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

 

Este abaixo seria o cupom 000282  (removi alguns dados de empresa ok)

Notem que teve um timeout no momento do envio, sendo assim não retornou valido para impressão mas   consultou NumeroSessao: 947826 - Resposta:947826|10000|Resposta com Sucesso.

veja que apareceu o cupom 000282

Sendo assim foi reeniado gerando o cupom  000283 identico ao 000282


   <infCFe versaoDadosEnt="0.07">
      <ide>
         <CNPJ>11111111111111111</CNPJ>
         <signAC>wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww==</signAC>
         <numeroCaixa>001</numeroCaixa>
      </ide>
      <emit>
         <CNPJ>11111111111</CNPJ>
         <IE>1111111111</IE>
         <indRatISSQN>N</indRatISSQN>
      </emit>
      <dest>
      </dest>
      <det nItem="1">
         <prod>
            <cProd>801403</cProd>
            <xProd>CAPA LAV ELETRONICA 7/12KG</xProd>
            <NCM>84189900</NCM>
            <CFOP>5102</CFOP>
            <uCom>PC</uCom>
            <qCom>1.0000</qCom>
            <vUnCom>30.00</vUnCom>
            <indRegra>A</indRegra>
            <obsFiscoDet xCampoDet="COD.CEST">
               <xTextoDet>2101000</xTextoDet>
            </obsFiscoDet>
            <obsFiscoDet xCampoDet="xcampo1">
               <xTextoDet>xtext1</xTextoDet>
            </obsFiscoDet>
         </prod>
         <imposto>
            <ICMS>
               <ICMSSN102>
                  <Orig>0</Orig>
                  <CSOSN>102</CSOSN>
               </ICMSSN102>
            </ICMS>
            <PIS>
               <PISSN>
                  <CST>49</CST>
               </PISSN>
            </PIS>
            <COFINS>
               <COFINSSN>
                  <CST>49</CST>
               </COFINSSN>
            </COFINS>
         </imposto>
         <infAdProd>Informacoes adicionais do produto</infAdProd>
      </det>
      <total>
         <vCFeLei12741>0.00</vCFeLei12741>
      </total>
      <pgto>
         <MP>
            <cMP>04</cMP>
            <vMP>30.00</vMP>
         </MP>
      </pgto>
      <infAdic>
         <infCpl>Trib Aprox R$7,94 Federal e 3,60 Estadual ;Fonte: IBPT   Chave: F3W1D7  VOLTE SEMPRE!</infCpl>
      </infAdic>
   </infCFe>
</CFe> )
11/07/18 15:03:23:666 -   Gravando XML Venda enviado: C:\FPDV\Enviado\26480216000195\201807\AD20180711150323-270855-env.xml
11/07/18 15:03:48:001 - NumeroSessao: 270855 - Resposta:Timeout durante a comunicação com o SAT.
11/07/18 15:04:25:904 - ACBrSAT.DesInicializado
11/07/18 15:04:30:611 - EACBrSATErro - ACBrSAT não foi inicializado corretamente
11/07/18 15:05:00:502 - ACBrSAT.Inicializado
11/07/18 15:05:00:503 - NumeroSessao: 698744 - Comando: ConsultarStatusOperacional
11/07/18 15:05:00:508 - NumeroSessao: 698744 - Resposta:Timeout durante a comunicação com o SAT.
11/07/18 15:07:08:599 - ACBrSAT.Inicializado
11/07/18 15:07:08:600 - NumeroSessao: 947826 - Comando: ConsultarStatusOperacional
11/07/18 15:07:09:070 - NumeroSessao: 947826 - Resposta:947826|10000|Resposta com Sucesso.|||000461424|IPFIX|192.168.001.089|02:01:00:46:14:24|255.255.255.000|192.168.001.002|192.168.001.002|000.000.000.000|CONECTADO|ALTO|1 Gbyte|0 Mbytes|20180711150710|01.00.00|00.07|111111111111111111111111110002829548366|111111111111111111111114240002813860020|11111111111111111004614240002829548366|20180711150650|20180711150650|20180325|20230325|0
11/07/18 15:07:09:081 - NumeroSessao: 48217 - Comando: EnviarDadosVenda( <?xml version="1.0" encoding="UTF-8"?><CFe>
   <infCFe versaoDadosEnt="0.07">
      <ide>
         <CNPJ>11111111111111111</CNPJ>
         <signAC>wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww+/NvPg3ZCJ5Muqqtib621KEP0/kVrnVg==</signAC>
         <numeroCaixa>001</numeroCaixa>
      </ide>
      <emit>
         <CNPJ>111111111</CNPJ>
         <IE>11111111</IE>
         <indRatISSQN>N</indRatISSQN>
      </emit>
      <dest>
      </dest>
      <det nItem="1">
         <prod>
            <cProd>801403</cProd>
            <xProd>CAPA LAV ELETRONICA 7/12KG</xProd>
            <NCM>84189900</NCM>
            <CFOP>5102</CFOP>
            <uCom>PC</uCom>
            <qCom>1.0000</qCom>
            <vUnCom>30.00</vUnCom>
            <indRegra>A</indRegra>
            <obsFiscoDet xCampoDet="COD.CEST">
               <xTextoDet>2101000</xTextoDet>
            </obsFiscoDet>
            <obsFiscoDet xCampoDet="xcampo1">
               <xTextoDet>xtext1</xTextoDet>
            </obsFiscoDet>
         </prod>
         <imposto>
            <ICMS>
               <ICMSSN102>
                  <Orig>0</Orig>
                  <CSOSN>102</CSOSN>
               </ICMSSN102>
            </ICMS>
            <PIS>
               <PISSN>
                  <CST>49</CST>
               </PISSN>
            </PIS>
            <COFINS>
               <COFINSSN>
                  <CST>49</CST>
               </COFINSSN>
            </COFINS>
         </imposto>
         <infAdProd>Informacoes adicionais do produto</infAdProd>
      </det>
      <total>
         <vCFeLei12741>0.00</vCFeLei12741>
      </total>
      <pgto>
         <MP>
            <cMP>04</cMP>
            <vMP>30.00</vMP>
         </MP>
      </pgto>
      <infAdic>
         <infCpl>Trib Aprox R$7,94 Federal e 3,60 Estadual ;Fonte: IBPT   Chave: F3W1D7  VOLTE SEMPRE!</infCpl>
      </infAdic>
   </infCFe>
</CFe> )
11/07/18 15:07:09:084 -   Gravando XML Venda enviado: C:\FPDV\Enviado\26480216000195\201807\AD20180711150709-048217-env.xml
11/07/18 15:07:09:633 - NumeroSessao: 48217 - Resposta:048217|06000|0000|Emitido com sucesso + conteúdo notas|||PENGZT48aW5mQ0ZlIElkPSJDRmUzNTE4MDcyNjQ4MDIxNjAwMDE5NTU5MDAwNDYxNDI0MDAwMjgzMDg0NzI1OCIgdmVyc2FvPSIwLjA3IiB2ZXJzYW9EYWRvc0VudD0iMC4wNyIgdmVyc2FvU0I9IjAxMDAwMCI+
11/07/18 15:07:09:641 -   Gravando XML Venda recebido: C:\FPDV\Vendas\26480216000195\201807\AD351801111111111111115590004614240002830847258.xml

Link to comment
Share on other sites

  • Administradores

Tópico movido para a área do SAC, para que o SLA de respostas seja considerado

Consultora SAC ACBr

Juliana Tamizou
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

Link to comment
Share on other sites

Seguinte pelo visto tu teve erro de timeout no retorno do SAT e em vez de fazer uma consulta da sessão tu resolveu enviar novamente.

Quando não obtiver retorno do SAT numa venda sempre faça uma consulta de sessão, com isso sera retornado corretamente o que deveria ter sido retornado no comando de envio dados vendas ou cancelamento.

Consultor SAC ACBr Rafael Dias
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Desenvolvedor ACBrLib.

 

Link to comment
Share on other sites

  • Fundadores
  • Solution

Você usa a propriedade ACBrSAT.ValidarNumeroSessaoResposta ?

Quando ela está True, o próprio ACBrSAT irá verificar se o número de sessão retornado bate com o número de Sessão enviado... e no caso de divergência, ele irá consultar a última sessão, para tentar buscar a correta resposta do SAT

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

Boa noite, apos enviar o cupom ja envio ACBrSAT.ValidarNumeroSessaoResposta ?  Alguem teria um exemplo  nao achei no demo preciso tratar este retorno da melhor forma.

Obrigado

Link to comment
Share on other sites

  • Fundadores
Agora, MSX disse:

 ACBrSAT.ValidarNumeroSessaoResposta ?

Isso é uma propriedade Booleana... Atribua True ou False

Por favor estude os fontes do Demo, projeto  SATTeste

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

Setando ACBrSAT1.ValidarNumeroSessaoResposta:=True;  ele vai fazer esta comparação correto? Não preciso ler o retorno apos envio?

Vou estar verificando melhor o demo.

Obrigado

  • Like 1
Link to comment
Share on other sites

  • Membros Pro

Bom dia, olhei demo mas nao vi estes tratamento  caso alguem que ja tem possa me ajudar agradeço.

Veja se seria assim


     SESSAO_AUX:= ACBrSAT1.numeroSessao;//Devo colocar antes do envio? Ou apos
     //-----------ENVIA CUPOM SAT----------------------------
    ACBrSAT1.EnviarDadosVenda(mVendaEnviar.Text);


  ///--------CONSULTA SE TEM TEMEOUT-----------------
      if ACBrSAT1.Resposta.codigoDeRetorno = 0 then
      begin
      ACBrSAT1.ConsultarNumeroSessao(SESSAO_AUX);

     if (ACBrSAT1.Resposta.codigoDeRetorno =8000)  then // noto que retorna 8000 caso eu desligue usb e volta em seguida tem algum retorno especifico do Timeout? 

  //------------------------------------------------------
     Caso existir cupom tem possibilidade de resgatar e imprimir? Fiz alguns testes mas nao obtive exito

Desde ja agradeço

Link to comment
Share on other sites

  • Membros Pro

Sim, adicionei esta opção mas minha duvida se estiver tudo ok envio o cupom mas algo aconteça apos o envio validando o cupom existe algo que possa ser feito? Resgatar o cupom valido e reimprimr ou neste caso não teria uma solução?

Não consigo saber se os que aconteceram o sat ja estaria indisponivel no momento do envio não estava verificando status operacional

Link to comment
Share on other sites

  • Fundadores

Consultar a última sessão irá devolver o XML da venda, caso ele exista... deixe a propriedade ValidarNumeroSessaoResposta ligada, que o ACBrSAT fará essa verificação para você...

15 minutos atrás, MSX disse:

Não consigo saber se os que aconteceram o sat ja estaria indisponivel no momento do envio não estava verificando status operacional

Desculpe, mas não compreendi o que você quis dizer 

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

Minha rotina esta assim:

    ACBrSAT1.ValidarNumeroSessaoResposta:=True;//deixo ativo 

       ACBrSAT1.ConsultarStatusOperacional;
  if ACBrSAT1.Resposta.codigoDeRetorno <> 10000 then
   begin
   Label_Resposta.Caption:='Sat não esta em operação!  ';
   exit;
   end;

    ACBrSAT1.EnviarDadosVenda(mVendaEnviar.Text); 


    if ACBrSAT1.Resposta.codigoDeRetorno = 0 then  // se tem timeout  eu teria de fazer algum tratamento pra recuperar o cupom, ou  se a sessão for valida com  ACBrSAT1.ValidarNumeroSessaoResposta=True não preciso me preocupar?

Meio perdido nas rotinas antecede o cupom e apos o cupom de forma a tratar possiveis erros, caso tenha sugestões agradeço

 
  

Link to comment
Share on other sites

  • Fundadores
1 hora atrás, MSX disse:

ou  se a sessão for valida com  ACBrSAT1.ValidarNumeroSessaoResposta=True não preciso me preocupar?

Exatamente... observe que você não deveria checar apenas o codigoDeRetorno... o correto seria também checar se a resposta do SAT tem o mesmo número de sessão da requisição... e é exatamente isso que o ACBrSAT1.ValidarNumeroSessaoResposta:=True; irá fazer... Então você não precisará mais se preocupar com o retorno do SAT

Quando o SAT estiver indisponível, você já pegará o problema em: ACBrSAT1.ConsultarStatusOperacional; dessa forma você dificilmente terá problema de indisponibilidade no SAT ao enviar o comando de Venda...

1 hora atrás, MSX disse:

if ACBrSAT1.Resposta.codigoDeRetorno = 0 then 

Qualquer retorno diferente de 6000, é erro na Venda... considere que o XML foi recusado... pois o você já testou a disponibilidade do SAT com a chamada de ACBrSAT1.ConsultarStatusOperacional

  • Like 2
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

  • Fundadores
Agora, MSX disse:

Obs: Empresas que estavam usando hub usb acredito ter mais possibilidade de erros nas usbs

provavelmente... a grande maioria dos Erros, é  causada pela baixa Amperagem na porta USB... isso pode ocorrer se existem muitos dispositivos USB ligados na máquina (a Amperagem fica dividida entre eles)

Um Hub USB (não energizado), é fatal para esse tipo de problema... mas o HUB USB com alimentação externa, pode ajudar...

Alguns SATs também permite o uso de uma fonte externa... o que ajuda muito...

  • 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

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