Ir para conteúdo
  • Cadastre-se

dev botao

ACBrPosPrinter - nao imprime o qrcode


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

Recommended Posts

Olá Bom dia.

Estou imprimindo o CF-e em uma Elgin Vox, mas não imprime o qrcode. sai apenas o link.

Uso as seguintes configurações.

 

ACBrSATExtratoESCPOS1.imprimiQRcode := True;

 

ACBrPosPrinter1.configqrcode.ColunasFonteNormal := 48;

ACBrPosPrinter1.configqrcode.errorleve := 0;

ACBrPosPrinter1.configqrcode.LarguraModulo := 4;

ACBrPosPrinter1.configqrcode.Tipo := 2;

 

Obrigado

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Elgin VOX não tem suporte a impressão de QRCode não, eu tenho uma aqui no meu laboratório de testes, tenho uma Bematech MP-4200 TH Imprimi QRCode usando PosPrinter Saiu legal e muito charmoso!!! Acabamos de ajustar o DANFeNFCeRL, precisei com urgência também dele exatamente por causa dos meus clientes que usam Elgin VOX.

Provavelmente a impressora não tem suporte a impressão do QRCode ou você está passando True para a propriedade IgnorarTags.

Dica para Elgin VOX com PosPrinter. Se for imprimir qualquer coisa que não seja QRCode e Códigos de Barras, defina no modelo = ppEscBematech as tags de formação sai legal, a danfe você até conseguirá imprimir sem formatação, colocando modelo= ppTexto, só que é lógico que não sairá o QRCode.

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

Olá Regys e Duarte, obrigado pela resposta.

Pesquisei sobre o assunto, vi que no caso elgin vox, existe uma atualização de firmware que faz com que imprima o qrcode, porem os comando são diferentes, usando um sistema de teste deles imprime perfeitamente

porém o acbr teria que suportar elgin, infelizmente não tenho o conhecimento necessário para faze lo.

para atualizar o firmware da impressora basta ir em: https://www.elgin.com.br/portalelgin/Site/Produto/Detalhe/ProdutoDetalhe.aspx?idProd=821&sm=p12 e baixar o arquivo atualização para qrcode, ou clicar direto nesse link: Atualização QRCode Vox, dentro do zip terá um manual de como faze lo, no arquivo tbm tem um exemplo em delphi mostrando como imprimir o qrcode. Vou anexar o arquivo em caso de duvida.

na unit Acbrescposepson alterei o result da função comandoqrcode para

function TACBrEscPosEpson.ComandoQrCode(ACodigo: AnsiString): AnsiString;
begin
  with fpPosPrinter.ConfigQRCode do
  begin
//     Result := GS + '(k' + #4 + #0 + '1A' + IntToStr(Tipo) + #0 +  // Tipo
//               GS + '(k' + #3 + #0 + '1C' + AnsiChr(LarguraModulo) +   // Largura Modulo
//               GS + '(k' + #3 + #0 + '1E' + IntToStr(ErrorLevel) + // Error Level
//               GS + '(k' + IntToLEStr(length(ACodigo)+3)+'1P0' + ACodigo +  // Codifica
//               GS + '(k' + #3 + #0 +'1Q0';  // Imprime

//     Result := #$1D'o'#0 + AnsiChr(LarguraModulo) + #0#2#$1D'k'#$B'Lk' + ACodigo + '#0#$C';

    Result := #$1D'o'#0#7#0#2#$1D'k'#$B'Lkhttp://projetoacbr.com.br#0#$C'
  end;
end;

tentei imprimir e funcionou perfeitamente o qrcode, lembrando que foi apos atualizar o firmware da impressora.

Tentei imprimir usando o fortes, porem meu celular não leu o qrcode gerado pelo fortes e impresso na elgin vox

Se puderem me ajudar ficarei muito grato.

Abraços

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

  • Moderadores

Não acho boa ideia alterar o fonte da Epson para imprimir na Elgin, o correto já que ela possui comando próprios e criar um modelo para ela, herdando o que é igual e alterando o que é diferente. Para fazer isso precisamos da documentação da impressora.

Quanto a não leitura do QRCode alguns colegas já relataram que alguns softwares de leitura não conseguem ler mesmo, tente efetuar o download de outro aplicativo e faça o teste.

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

Olá Regys

Fiz esta alteração somente para testes, tbm acho melhor ter uma unit exclusiva para Elgin, porem como disse antes não entendo nada de comando esc/pos.

sobre a documentação no link http://www.elgin.com.br/institucional/produto.php?prod=NDE3&sessao=auto em download center tem todos os manuais da elgin.

Falei no suporte da elgin ele me enviar um exemplo em delphi 7 que esta anexado abaixo

Obrigado.

 

DemoVoxPlusDelphi7.zip

Link para o comentário
Compartilhar em outros sites

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Dos modelos atuais qual é o que está imprimindo mais corretamente na Elgin, para que eu possa tomar por base.

Não acho boa ideia alterar o fonte da Epson para imprimir na Elgin, o correto já que ela possui comando próprios e criar um modelo para ela, herdando o que é igual e alterando o que é diferente. Para fazer isso precisamos da documentação da impressora.

Quanto a não leitura do QRCode alguns colegas já relataram que alguns softwares de leitura não conseguem ler mesmo, tente efetuar o download de outro aplicativo e faça o teste.

Imprimi aqui usando cada um dos modelos hoje suportado pelo PosPrinter. os arquivos estão renomeados de acordo com o modelo. Minha opinão é "Espon" apesar de sair maior, acho que é só uma questão das colunas, mais aceito pelo impresso quais todos os comandos de formatação, na Bematech se observar, não aceito os alinhamentos.

Cupom_Elgin.rar

Link para o comentário
Compartilhar em outros sites

Apenas para conhecimento, estou com uma Elgin i9, testei configurado como Epson, e imprimiu corretamente, inclusive as informações

do qrcode, o unico detalhe é q não saltava o suficiente e na hora de cortar o papel, cortava no meio do qrcode.

Acrescentei no rodape:

  if FPosPrinter.Modelo = ppEscPosEpson then
  begin
     for nLinhas := 1 to 8 do
        FPosPrinter.Buffer.Add(' ');
  end ;

Mas no caso, deveria ser ppEscPosElgin, q ainda não existe.

Os fontes peguei daqui:

https://github.com/GabrielF7/ACBrTrunk2

 

Emerson Crema

Max Scalla Informática.

Link para o comentário
Compartilhar em outros sites

A Elgin não é compatível com Epson EscPos ?  Veja as imagens desse post:

Boa tarde Daniel.

O teste que eu fiz aqui foi com uma elgin vox, que por padrão não tem suporte a qrcode, entrei em contato com o fabricante e fui informado que deveria atualizar firmware da mesma, para que o qrcode fosse impresso,

porem o comando para imprimir o qrcode na elgin vox é diferente do usado na epson.

Nao fiz o teste com a i9.

No caso da Vox usando as configurações da epson, imprime tudo menos o qrcode, mas se fizer as alterações que citei acima funciona perfeitamente.

att

abraços

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Será possível que o Fabricante Elgin tem 2 modelos de impressoras com dois padrões diferentes ??

Conforme você pode ver na imagem, a I9 suporta o QRCode EscPos...

EscPos é um padrão criado pela Epson, mas vários fabricantes emulam ele... Por favor verifique com a Elgin, porque esse modelo não suporta o mesmo conjunto de instruções EscPos da I9

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.

falei com o pessoal da elgin, ele me disseram que o manual de desenvolvimento da vox e da i9  é  diferente, o da vox é igual a nix, porem a i9 tem um manual proprio.

VOX: https://www.elgin.com.br/PortalElginAdm/Upload/DownloadPublico/Automacao/naofiscais/VOX/WIND_NIX_DocsSoftwareHouse_Rev1003.zip

Atualização Firmware Vox para impressão do qrcode: https://www.elgin.com.br/PortalElginAdm/Upload/DownloadPublico/Automacao/naofiscais/VOX/Atualizacao QRCode Vox.rar.

I9: https://www.elgin.com.br/PortalElginAdm/Upload/DownloadPublico/Automacao/naofiscais/I9/Manual/Manual de programacao i9 - Rev2 0.pdf.

 

tirei uma foto da impressao do cupom fiscal na elgin vox utilzando as configurações da epson, mas não consigo anexar aqui no forum.

att

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Emerson,

Mas nesse caso, se criassemos um modelo novo "EscPosElgin", teriamos:

  • Elgin I9 suporta EscPosEpson e não suporta EscPosElgin
  • Elgin VOX e NIX, suportam EscPosElgin e não suportam EscPosEpson

Já imaginou a confusão aqui no fórum ? Todos usuários de Elgin I9 vão postar algo como: "Minha Elgin I9 não imprime QRCode"...

Acho que devemos solicitar explicações do Fabricante, porque os equipamentos que ele mesmo produz, não são compatíveis entre si... No meu entendimento, seria muito mais vantajoso para o Fabricante, usar o padrão EscPos da Epson, que de fato é um padrão de marcado, e facilitará a adoção do equipamento deles por ser compatível com os equipamentos mais vendidos no mercado...

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

Não... no caso de impressoras NÃO fiscais, apenas enviamos comandos, mas não lemos a resposta (não há uma maneira simples de ler)...

Se a impressora for SERIAL, nesse caso, SIM, seria possível ler algumas informações, e de fato o TACBrPosPrinter tem métodos que fazem isso (veja no Demo)... mas essa leitura depende muito do protocolo usado, ou seja, precisamos saber de antemão o protocolo do Equipamento...

Minha sugestão é: Transfira o problema para o Fabricante... ele que mantenha um padrão entre todos os equipamentos que o próprio fabrica...

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

  • 1 mês depois ...

Daniel, boa noite.

Estive trabalhando numa solução para Elgin, não sei se esse tópico aqui evoluiu. Por necessidade, implementei a classe TACBrEscElginVOX, herdada da Bematech. Nos meus testes, foi a impressão que melhor se adaptou, exceto pelos comandos do QRCode, que são diferentes.

Mesmo sabendo que o QRCode não poderá ser usado no SAT, acho bom deixar implementado, pois respeitando o limite de 250 caracteres do QRCode Elgin, a impressão funciona bem, e fica legível  (citei esses limites no tópico http://www.projetoacbr.com.br/forum/topic/23849-tamanho-do-qrcode-na-elgin-vox/).

Estou anexando o ACBrPosElginVOX.pas, caso considere útil colocar no repositório.

Fiz apenas algumas mudanças no ACBrPosPrinter.pas, segue abaixo.:

type
  TACBrPosPrinterModelo = (ppTexto, ppEscPosEpson, ppEscBematech, ppEscDaruma, ppEscElginVOX);

uses
  .
  .
  ACBrEscPosEpson, ACBrEscBematech, ACBrEscDaruma, ACBrEscElginVOX;


procedure TACBrPosPrinter.SetModelo(AValue: TACBrPosPrinterModelo);
  .
  .
  .
  case AValue of
    ppEscPosEpson: FPosPrinterClass := TACBrEscPosEpson.Create(Self);
    ppEscBematech: FPosPrinterClass := TACBrEscBematech.Create(Self);
    ppEscDaruma:   FPosPrinterClass := TACBrEscDaruma.Create(Self);
    ppEscElginVOX: FPosPrinterClass := TACBrEscElginVOX.Create(Self);
  

 

ACBrEscElginVOX.pas

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Estudei com mais atenção o manual da VOX... e realmente tirando o QRCode, todos os demais comandos parecem ser idênticos ao do EscBema...

Porém não consegui compreender a estrutura do comando recomendado pela Elgin no Exemplo... não parece seguir a especificação do manual...

Apliquei no SVN, uma possível implementação para a impressão de QRCode na VOX... (não pude testar por não ter a impressora)

Notei que segundo o manual, ela pode suportar até 928 caracteres no QRCode

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, boa noite.

Testei seu código na Elgin VOX. Funciona exatamente como aquele que mandei no ACBrPosElginVOX.pas: Imprime, mas não lê. Também havia notado diferença entre o manual e o exemplo fornecido pela Elgin, mas nem me dei ao trabalho porque, em contato com eles, me mandaram um exemplo atualizado e a string de impressão era a mesma.

O fato é que, como você citou, o manual diz realmente que o limite é 928 caracteres. O QRCode do Sat tem 426 caracteres. A Elgin imprime, mas o código não é legível, essa é a questão. Segundo o suporte da Elgin, é uma limitação da impressora, e o QRCode fica legível com, no máximo, 254 caracteres.

Cortando o QRCode do Sat nos primeiros 250 caracteres, ficou legível. Acima disso não.

Acho que você pode manter seu código no repositório, com um pequeno ajuste:

  1. Troque  AnsiChr(LarguraModulo * 2) por AnsiChr(LarguraModulo: Não pode multiplicar, quanto maior, pior.

 

Observação: O limite máximo para imprimir o QRCode do SAT é  LarguraModulo = 3. Maior do que isso, não imprime nada. Testei uma string de 250 caracteres e LarguraModulo = 4 e também imprimiu. Maior que isso, não imprime.

Vai manter o ACBrEscElgin.pas no repositório? Se sim, vou alterar o meu pra deixar de acordo com o seu código.

 

Abraço,

Laércio

 

Link para o comentário
Compartilhar em outros sites

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