Ir para conteúdo
  • Cadastre-se

dev botao

Problema Comunicação Impressora Sweda If St 200


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

Recommended Posts

Boa Tarde estou tendo um problema com a acbrecf com a impressora sweda, configuro o abcr para ecfswedastx, funciona tudo normal por um longo periodo , so que as vezes ele para de comunicar, e so consigo comunicar com a impressora novamente se configurar o acbr para a impressora ecfsweda, mas dai meus relatorios gerenciais desconfigurão todo.

 

Se alguem puder me dar uma dica agradeço OBRIGADO.

 

Link para o comentário
Compartilhar em outros sites

ele esta me retornando isso para swedastx:

 

 

Ativar
-- 15:35:29 RetornaInfoECF(I1)
            TX -> [sTX]+34|I1[ETX][141]
   15:35:38 RX <- 
----------------- ERRO -----------------
Impressora SwedaSTX não está respondendo
----------------------------------------
 
e se colocar a sweda:
 
 
-- 15:36:45 12/12/2012 Ativar
            TX -> [ESC].271}
   15:36:45 RX <- .+C00111212129212CN000000005390258520000030800000125809000000000000000000000000000000000000000000000000000000125809034197822I  }
-- 15:36:45 
            TX -> [ESC].27G}
   15:36:45 RX <- .+C001G000000000005000500001.000000000537767762000000000000000000000000000000000000000000000000000000000000                    }
-- 15:36:45 
            TX -> [ESC].27H}
   15:36:45 RX <- .+C001HSW030700000000001186 01.00.05    00050308003419006569027822000000039212002000070000000000000000053902585200000001258090 }
-- 15:36:45 Estado
            TX -> [ESC].28}
   15:36:46 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121536S                                   001NN000000000000000000000000SNNS3 }
-- 15:36:46 NumECF
            TX -> [ESC].27F}
   15:36:46 RX <- .+C001F000000000000000000000000000000000000000000000000000000000000000000000000000000000000                                    }
-- 15:36:50 Estado
            TX -> [ESC].28}
   15:36:50 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121537S                                   001NN000000000000000000000000SNNS3 }
-- 15:36:50 Estado
            TX -> [ESC].28}
   15:36:50 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121537S                                   001NN000000000000000000000000SNNS3 }
-- 15:36:50 Estado
            TX -> [ESC].28}
   15:36:51 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121537S                                   001NN000000000000000000000000SNNS3 }
-- 15:36:51 Estado
            TX -> [ESC].28}
   15:36:51 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121537S                                   001NN000000000000000000000000SNNS3 }
-- 15:36:51 Estado
            TX -> [ESC].28}
   15:36:51 RX <- .+0026001CN.FISCAL12N000000036967000000036967!1212121537S                                   001NN000000000000000000000000SNNS3 }
 
Link para o comentário
Compartilhar em outros sites

  • Fundadores

O log que você enviou é de um ECF com o modelo ecfSweda e não ecfSwedaSTX.

 

Envio o log com o ECF configurado para ecfSwedaSTX e no momento em que a falha de comunicação ocorre

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

Ok, agora que notei... Como está ligado o ECF no PC, Serial, USB, Adaptador USB<->Serial ?

 

parece ser algum problema com a porta de comunicação... as vezes isso é resolvido baixando a porta para um valor até COM4 e/ou diminuindo os "buffers", no Painel de controle do Windows, Devices, sobre a porta Serial, (botão Avançado)

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

Ok, agora que notei... Como está ligado o ECF no PC, Serial, USB, Adaptador USB<->Serial ?

 

parece ser algum problema com a porta de comunicação... as vezes isso é resolvido baixando a porta para um valor até COM4 e/ou diminuindo os "buffers", no Painel de controle do Windows, Devices, sobre a porta Serial, (botão Avançado)

não estou lembrado em que porta esta daniel vou dar uma olhada la e fazer um teste. Muito Obrigado por enquanto.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Qual o modelo e versão do ECF ? 

Já tentou em outra máquina ?

Tem certeza que seus fontes estão atualizados ?

 

Acabo de lembrar que a Sweda precisa ser desligada para mudar do protocolo STX para ESC . e vice-versa...

Editado por Daniel Simoes
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

Qual o modelo e versão do ECF ? 

Já tentou em outra máquina ?

Tem certeza que seus fontes estão atualizados ?

 

Acabo de lembrar que a Sweda precisa ser desligada para mudar do protocolo STX para ESC . e vice-versa...

Bom nos vamos dar um pulo la no cliente e ja dou uma olhada em todas essas informações

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Verifique com o fabricante se essa é a última versão de Sw.Básico para esse ECF

 

Há algo errado com ele, ele não está conseguindo responder a um pedido de Informação do comando "34 I1", onde o ACBrECF, na ativação da classe, tenta ler a versão do protocolo....

 

Tente obter essa mesma informação com o programa Demo do fabricante... se nem nele funcionar, temos um problema no ECF...

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

Daniel , apanhei com esse problema esses dias em um cliente com Sweda ST120 , o cliente tem 4 pdvs com este ECF , todos funcionavam normalmente até que um deles retornava o erro acima informado com ACBrSwedaSTX e com ACBrSweda ia normal , testava com o Demo do ACBrEcf e tbm não ativava com ACBrSwedaSTX só ACBrSweda  , cara parece mentira , utilizo timeout = 8 nos pdvs deste cliente e apenas este ECF deste pdv tive que aumentar para 30 , acabou o problema , i o mais loco é que os demais pdvs ficaram com timeout = 8 e esta normal , vai explicar !

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Humm.. agora que vc comentou isso... lembro também que já vi algo relacionado ao Handshake...

 

A Sweda é o unico ECF que usa Handshake como: DTR/DSR.... Mas acompanhei um caso onde o ECF Sweda só funcionou após mudar o Handshake para RTS/CTS

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

 

Acabei de testar aqui numa ST120 e aconteceu a mesma coisa descrita acima...com Sweda funciona Ok..mas não sai os Rel gerenciais....quando passo para SwedaSTX Funciona os relatórios mas ela perde a comunicação do Nada...vc entra no paf e esta tudo ok...sai e entra novamente e não consegue mais comunicar.

 

Conseguiram resolver este problema...fiz os ajustes passados acima e nenhum deu certo

 

Estou um uma ECF Conectada no meu micro neste momento para testes

 

Agradeço a atenção

Link para o comentário
Compartilhar em outros sites

Bom dia

 

Esse mes atualizei minha versão para SwedaSTX e estou exatamente com o mesmo problema.

A dificuldade é que o problema não é constante, ora funciona durante dias normalmente, e as vezes ao ligar o caixa pela manhã o mesmo não responde.

 

Da minha parte as configurações que ja tentei e que aparentemente "estabilizou" durante um periodo maior de tempo foram :

 

- aumentar o time-out para 10

- garantir que a velocidade da impressora fosse compativel com a do componente ( no meu caso todas estão em 9600 baud )

 

O caso é exatamente o enfrentado pelos colegas, como o Daniel informou, vou testar da proxima vez que der erro a mudança do Handshake, se tiver novidade ou se alguem tiver mais alguma solução comunique.

 

Abraços

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Uma outra coisa é ser tentada, se a impressora estiver com a valocidade muito alta, ou usando USB emulada em COM é diminuir o Buffer de Entrada e Saida

 

post-61-0-42891800-1356182268_thumb.png

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

Pessoal,

Fiz os testes de setar direamente na inicialização DTR/DSR e depois RTS/CTS mesmo assim não funcionou

Estava comunicando normalmente no protocolo STX derrepente para de comunicar ao iniciar o aplicativo PDV

O detalhe que descobri é o seguinte, o problema esta na função de ativar dentro do ACBrECFSwedaSTX, pois em dois casos resolvi da seguinte maneira

Abri o ECFTeste.exe e ao ativar dava estouro do time-out e na sequencia sem fechar o ECFTeste.exe vc ativando novamente ele voltava a funcionar.

É como se a impressora perdesse a configuração do protocolo STX e precisasse de um tempo maior para ativa-lo novamente

Agora preciso de ajuda para saber que comando ou que verificação deve ser feita para confirmar que o protocolo STX esta ativo ao inves do ESC

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Não um comando para detectar o protocolo... o ECF escolherá o protocolo de acordo com a primeira sequencia de instruções que será enviada...

 

o TimeOut sempre ocorre na inicialização ?  em qual comando ?  Tem um LOG para 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

  • 4 semanas depois ...

Daniel, Segue o log para analise em todos caixas o problema é exatamente o mesmo.

O interessante é que na primeira tentativa do ACBr ele envia o comando '+34'

e quando manda ativar novamente e realmente funciona ele manda o comando ' ,34'

 

 

--------------------------------------------------------------------------------
ATIVAR - 24/01/13 09:55:03:109 - Modelo: SwedaSTX - Porta: COM1 - TimeOut: 3
         Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0
--------------------------------------------------------------------------------

-- 09:55:03:125 RetornaInfoECF(I1)
                TX -> [sTX]+34|I1[ETX][141]
   09:55:06:250 RX <-
----------------- ERRO -----------------
Impressora SwedaSTX não está respondendo
----------------------------------------


--------------------------------------------------------------------------------
ATIVAR - 24/01/13 09:55:14:437 - Modelo: SwedaSTX - Porta: COM1 - TimeOut: 3
         Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0
--------------------------------------------------------------------------------

-- 09:55:14:437 RetornaInfoECF(I1)
                TX -> [sTX],34|I1[ETX][142]
   09:55:14:671 RX <- [sTX],34I0001SWEDA[NUL][ESC].IF ST200[NUL][ESC]+ECF-IF[NUL][NUL]SW0310[ESC])2831 [NUL]01.00.05[NUL]G[ETX][128][sTX],34+0000AA[130][128][130][128][128]I1[ETX][ETX]
-- 09:55:14:671 RetornaInfoECF(H2)
                TX -> [sTX]-34|H2[ETX][143]
   09:55:15:453 RX <- [sTX]-34H0002001[NUL][NUL]002[NUL]SSN[ETX][186][sTX]-34+0000AA[130][128][130][128][128]H2[ETX][4]
-- 09:55:15:453 RetornaInfoECF(U2)
                TX -> [sTX].34|U2[ETX][157]
   09:55:15:687 RX <- [sTX].34U00023NN[ETX][128][sTX].34+0000AA[130][128][130][128][128]U2[ETX][18]
-- 09:55:15:687 RetornaInfoECF(R2)
                TX -> [sTX]/34|R2[ETX][155]
   09:55:15:984 RX <- [sTX]/34R0002STAR[NUL][ESC]'TSP100[NUL][ESC]#TERMICA[NUL][ESC]"B122410170576203203083[ESC]"[ETX][219][sTX]/34+0000AA[130][128][130][128][128]R2[ETX][16]
-- 09:55:15:984 Estado
                TX -> [sTX]034[ETX][156]
   09:55:16:203 RX <- [sTX]034+0000AA[130][128][130][128][128][ETX][141]
                TX -> [sTX]156|[ETX][GS]
-- 09:55:16:515 Estado
                TX -> [sTX]234[ETX][158]
   09:55:16:718 RX <- [sTX]234+0000AA[130][128][130][128][128][ETX][143]

Editado por Fabio_Farias
Link para o comentário
Compartilhar em outros sites

 

Daniel, Segue o log para analise em todos caixas o problema é exatamente o mesmo.

O interessante é que na primeira tentativa do ACBr ele envia o comando '+34'

e quando manda ativar novamente e realmente funciona ele manda o comando ' ,34'

 

 

--------------------------------------------------------------------------------

ATIVAR - 24/01/13 09:55:03:109 - Modelo: SwedaSTX - Porta: COM1 - TimeOut: 3

         Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0

--------------------------------------------------------------------------------

-- 09:55:03:125 RetornaInfoECF(I1)

                TX -> [sTX]+34|I1[ETX][141]

   09:55:06:250 RX <-

----------------- ERRO -----------------

Impressora SwedaSTX não está respondendo

----------------------------------------

--------------------------------------------------------------------------------

ATIVAR - 24/01/13 09:55:14:437 - Modelo: SwedaSTX - Porta: COM1 - TimeOut: 3

         Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0

--------------------------------------------------------------------------------

-- 09:55:14:437 RetornaInfoECF(I1)

                TX -> [sTX],34|I1[ETX][142]

   09:55:14:671 RX <- [sTX],34I0001SWEDA[NUL][ESC].IF ST200[NUL][ESC]+ECF-IF[NUL][NUL]SW0310[ESC])2831 [NUL]01.00.05[NUL]G[ETX][128][sTX],34+0000AA[130][128][130][128][128]I1[ETX][ETX]

-- 09:55:14:671 RetornaInfoECF(H2)

                TX -> [sTX]-34|H2[ETX][143]

   09:55:15:453 RX <- [sTX]-34H0002001[NUL][NUL]002[NUL]SSN[ETX][186][sTX]-34+0000AA[130][128][130][128][128]H2[ETX][4]

-- 09:55:15:453 RetornaInfoECF(U2)

                TX -> [sTX].34|U2[ETX][157]

   09:55:15:687 RX <- [sTX].34U00023NN[ETX][128][sTX].34+0000AA[130][128][130][128][128]U2[ETX][18]

-- 09:55:15:687 RetornaInfoECF(R2)

                TX -> [sTX]/34|R2[ETX][155]

   09:55:15:984 RX <- [sTX]/34R0002STAR[NUL][ESC]'TSP100[NUL][ESC]#TERMICA[NUL][ESC]"B122410170576203203083[ESC]"[ETX][219][sTX]/34+0000AA[130][128][130][128][128]R2[ETX][16]

-- 09:55:15:984 Estado

                TX -> [sTX]034[ETX][156]

   09:55:16:203 RX <- [sTX]034+0000AA[130][128][130][128][128][ETX][141]

                TX -> [sTX]156|[ETX][GS]

-- 09:55:16:515 Estado

                TX -> [sTX]234[ETX][158]

   09:55:16:718 RX <- [sTX]234+0000AA[130][128][130][128][128][ETX][143]

 

TimeOut: 3 é muito pouco pra Sweda , aumente ! tenta colocar 30 . mas...

 

 

Daniel , verificando meus fontes , talvez seja isso que não consigo detectar erros nos comandos que os cara comenta , preciso ver um log pra ver se isso acontece comigo tbm , tenho uns 30 clientes que utiliza Sweda e não consigo detectar isso ;

 

 

Utilizo try except quando mando comando pro ecf esta mais ou menos assim :

 

 

Tentativa : integer ;

Ok : Boolean ;

begin

Tentativa := 1 ;

Ok := False ;

While Ok = False do

begin

try

Ok := True ;

AcbrECf....  // Todos os Comandos do Acbr estão assim ...

except

Sleep(30) ;

Ok := False ;

if Tentativa > 10 Then // Só se Except 10 vezes para pedir para Vazar do Sistema que bichou tudo !

   begin

   Application.MessageBox(Problemas no ECF , Contate o Administrador do Sistema !','I N F O R M A Ç Ã O',mb_ok + mb_iconerror);

   // Vaza aqui  ;

   end ;

inc(Tentativa) ;

end ;

end ;

 

end ;

 

 

é isso .

 

 

 

 

Editado por marcelo_sp
Link para o comentário
Compartilhar em outros sites

  • Fundadores

Vc fez um loop de 10 Retrys automáticos.. Pode ser por isso que vc nunca teve o problema reportado...

 

mas se houver um erro sem chance de recuperação, como por exemplo, tentar efetuar um pagamento sem haver a subtotalização... mesmo assim ele irá enviar o erro por 10 vezes :)

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

Vc fez um loop de 10 Retrys automáticos.. Pode ser por isso que vc nunca teve o problema reportado...

 

mas se houver um erro sem chance de recuperação, como por exemplo, tentar efetuar um pagamento sem haver a subtotalização... mesmo assim ele irá enviar o erro por 10 vezes :)

 

Então , em subtotalização , pagamento ,  nunca tive nenhum bug reportado por nenhum cliente , claro que tbm existe consistencias para efetuar a sequencia de cada comando antes de efetuar o Comando seguinte para o ECF para então efetuar o loop , ou seja , não deixo executar o Pagamento se o ECF não Subtotalizado , e por ai vai ... verificar sempre o Estado do ECF é sempre bacana ! algumas variaveis booleanas é uma mão na roda para alguns tipos de consistencias .

 

Utilizo hj o ACBrECF por completo na minha AC , mas utilizei por muito tempo as Dlls sersweda e swecf e na época tbm utiliza a mesma estratégia de hj com o ACBrECF !

Editado por marcelo_sp
Link para o comentário
Compartilhar em outros sites

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