Ir para conteúdo
  • Cadastre-se

dev botao

Ecf Sweda


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

Recommended Posts

Boa tarde colegas!

Apesar da recomendação em vários tópicos aqui do fórum, para que com ecfs térmicas se utilize o protocolo SWEDASTX em vez de SWEDA, eu inicialmente não tendo conhecimento dessa recomendação, configurei em todos os meus clientes (todos tem ecf mfd) o protocolo SWEDA.

Agora que me sobrou um tempo, resolvi alterar o meu sistema aqui para trabalhar com o protocolo SWEDASTX como recomendado.

Bom e no primeiro teste (EcfTeste.exe) que fui fazer emitindo uma leitura X, aconteceu que a impressão foi feita normalmente mas ao fim da impressão a impressora continuou ocupada de forma permanente.

Fiz o mesmo teste várias vezes e o mesmo aconteceu.

Troquei a ecf e não teve jeito. Mesmo "problema".

Bom ai resolvi olhar o log do ACBR que segue abaixo

-- 13:28:53 LeituraX

SwedaSTX VerificaFimLeitura: Verificando Bloco: 115+0000AE‚€‚€€‘

SwedaSTX VerificaFimLeitura: Seq:49 Tarefa:15 Tipo: + ACK:6 Result: True

SwedaSTX VerificaFimImpressao: Pedindo o Status. Seq:50

SwedaSTX VerificaFimImpressao: ACK = 6, OK... Aguardando Bloco

SwedaSTX VerificaFimImpressao: I: 1 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 2 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 3 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 4 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 5 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 6 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 7 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 8 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 9 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 10 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 11 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 12 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 13 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 14 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 15 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 16 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 17 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 18 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 19 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 20 Bloco Lido:

SwedaSTX VerificaFimImpressao: Pedindo o Status. Seq:51

SwedaSTX VerificaFimImpressao: ACK = 6, OK... Aguardando Bloco

SwedaSTX VerificaFimImpressao: I: 1 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 2 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 3 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 4 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 5 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 6 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 7 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 8 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 9 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 10 Bloco Lido:

SwedaSTX VerificaFimImpressao: I: 11 Bloco Lido: 2

SwedaSTX VerificaFimImpressao: I: 12 Bloco Lido: 23

SwedaSTX VerificaFimImpressao: I: 13 Bloco Lido: 234

SwedaSTX VerificaFimImpressao: I: 14 Bloco Lido: 234+

SwedaSTX VerificaFimImpressao: I: 15 Bloco Lido: 234+0

SwedaSTX VerificaFimImpressao: I: 16 Bloco Lido: 234+00

SwedaSTX VerificaFimImpressao: I: 17 Bloco Lido: 234+000

SwedaSTX VerificaFimImpressao: I: 18 Bloco Lido: 234+0000

SwedaSTX VerificaFimImpressao: I: 19 Bloco Lido: 234+0000AA

SwedaSTX VerificaFimImpressao: I: 20 Bloco Lido: 234+0000AA‚

SwedaSTX VerificaFimImpressao: Pedindo o Status. Seq:52

SwedaSTX VerificaFimImpressao: ACK = 6, OK... Aguardando Bloco

Me parece que alguma leitura continua sendo feita depois da impressão.

É assim mesmo? Tem alguma configuração que pode ser feita?

Se alguém puder me dar alguma dica agradeço desde já.

Att.

Giuliano Naspolini Ribeiro

Automalog Consultoria e Sistemas Ltda

Link para o comentário
Compartilhar em outros sites

Eu tive esse problema uma vez usando um emulador e ligando um cabo entre duas portas COM.

Uma porta deu problema e eu troquei, depois nunca mais tive esse problema.

Experimenta testar em outra máquina ou outra porta.

Sobre o problema de ficar em looping:

Pelo que vi no fonte não está vindo um bloco completo na resposta e o componente não consegue determinar se imprimiu ou não.

Ele fica em looping infinito porque o VerificaFimImpressao retorna "False" para a classe pai (AcBrECFClass metodo doLeResposta ) que fica chamando a funcao "VerificaFimImpressao" até que ela retorne true.

Antes de alterar o fonte, acho melhor verificar com o Daniel se após as 20 tentativas o retorno do VerificaFimImpressao deve ser true, já que na verdade o componente não conseguiu verificar o retorno.

Quantas reuniões foram mesmo esta semana? Reúna os amigos!

Link para o comentário
Compartilhar em outros sites

Eu tive esse problema uma vez usando um emulador e ligando um cabo entre duas portas COM.

Uma porta deu problema e eu troquei, depois nunca mais tive esse problema.

Experimenta testar em outra máquina ou outra porta.

Sobre o problema de ficar em looping:

Pelo que vi no fonte não está vindo um bloco completo na resposta e o componente não consegue determinar se imprimiu ou não.

Ele fica em looping infinito porque o VerificaFimImpressao retorna "False" para a classe pai (AcBrECFClass metodo doLeResposta ) que fica chamando a funcao "VerificaFimImpressao" até que ela retorne true.

Antes de alterar o fonte, acho melhor verificar com o Daniel se após as 20 tentativas o retorno do VerificaFimImpressao deve ser true, já que na verdade o componente não conseguiu verificar o retorno.

Vou testar em uma máquina com uma porta serial mesmo, pq aqui pra desenvolver eu uso um cabo usb -> serial na comunicação com a ecf, e talvez seja isso, pois já troquei inclusive esse cabo, o cabo da ecf e a porta usb que ele está conectado.

De qualquer forma seria interessante essa alteração que vc sugeriu, pois quando o problema acontece o sistema fica parado nesse loop infinito. Um "timeout" resolveria.

Obrigado pela ajuda Fernando.

Abraço!

Giuliano Naspolini Ribeiro

Automalog Consultoria e Sistemas Ltda

Link para o comentário
Compartilhar em outros sites

  • Consultores

com0com +1! É o que há! :)

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

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

The popup will be closed in 10 segundos...