Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Boa Tarde!!!

É possível aumentar o tamanho do QRCode no DANFE da NFCe?

Estou alterando a propriedade "LarguraModulo"  do ACBrPosPrinter, mas não obtive sucesso.

Ao analisar o fonte do "ACBrNFeDANFeESCPOS.pas.pas", verifiquei que o valor para essa propriedade está limitado a 4

    InfoQrCode.Add( '<qrcode_tipo>2</qrcode_tipo>'+
                    '<qrcode_error>0</qrcode_error>'+
                    '<qrcode_largura>'+IntToStr(min(4,FPosPrinter.ConfigQRCode.LarguraModulo))+'</qrcode_largura>'+
                    '<qrcode>'+DadosQRCode+'</qrcode>');

 

  • Administradores
Postado

Bom dia.

Por qual  motivo você precisa aumentar o QRCode?

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Postado

Bom Dia.

A princípio seria apenas questão de estética mesmo, já que a dimensão atual já atende as especificações técnicas definidas no manual. 

Fazendo uma comparação com o QRCode gerado no CFe, ele é bem menor.

Teria algum problema de aumentar o tamanho?

  • Administradores
Postado

Boa tarde.

Para maior, eu creio que não.

Att.

  • Curtir 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Postado

Bom Dia.

O problema é que da forma que está implementado, utilizando o método "Min", eu não consigo atribuir um valor maior que 4.

Acredito que o correto seria definir o 4 como valor mínimo e permitir que informe um valor maior.

Obrigado!!!

  • Consultores
Postado
Em 29/08/2019 at 08:39, luizfr disse:

Bom Dia.

O problema é que da forma que está implementado, utilizando o método "Min", eu não consigo atribuir um valor maior que 4.

Acredito que o correto seria definir o 4 como valor mínimo e permitir que informe um valor maior.

Obrigado!!!

Me parece fazer sentido o que diz. Você poderia fazer as alterações e anexar o arquivo alterado para que possamos analisar?

[]'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.
Postado
23 horas atrás, EMBarbosa disse:

Me parece fazer sentido o que diz. Você poderia fazer as alterações e anexar o arquivo alterado para que possamos analisar?

Bom Dia!!!

Conforme solicitado, estou anexando o arquivo alterado para análise

ACBrNFeDANFeESCPOS.pas

  • Consultores
Postado
1 hora atrás, luizfr disse:

Bom Dia!!!

Conforme solicitado, estou anexando o arquivo alterado para análise

Olá luizfr,

   O código que você enviou fez o inverso do que está atual, quer dizer, impede de informar um valor menor que 4:

ifthen(FPosPrinter.ConfigQRCode.LarguraModulo < 4,4,FPosPrinter.ConfigQRCode.LarguraModulo)

Além disso, notei que seu arquivo está desatualizado.

Queira por favor:

  1. Atualizar o ACBr
  2. Substituir o arquivo pelo anexo
  3. testar
  4. Reportar qualquer problema

ACBrNFeDANFeESCPOS.pas

  • Curtir 1

[]'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.
Postado
2 horas atrás, EMBarbosa disse:

Olá luizfr,

   O código que você enviou fez o inverso do que está atual, quer dizer, impede de informar um valor menor que 4:


ifthen(FPosPrinter.ConfigQRCode.LarguraModulo < 4,4,FPosPrinter.ConfigQRCode.LarguraModulo)

Além disso, notei que seu arquivo está desatualizado.

Queira por favor:

  1. Atualizar o ACBr
  2. Substituir o arquivo pelo anexo
  3. testar
  4. Reportar qualquer problema

ACBrNFeDANFeESCPOS.pas 36 kB · 0 downloads

Boa Tarde!!!

EMBarbosa, 

A ideia é realmente inverter a lógica. Impedir que seja informado um valor menor que 4, para atender as exigências definidas no manual de dimensão minima do QRCode, e permitir informar um valor maior caso necessário.

Segue o arquivo atualizado com a alteração

ACBrNFeDANFeESCPOS.pas

  • Consultores
Postado
1 hora atrás, luizfr disse:

Boa Tarde!!!

EMBarbosa, 

A ideia é realmente inverter a lógica. Impedir que seja informado um valor menor que 4, para atender as exigências definidas no manual de dimensão minima do QRCode, e permitir informar um valor maior caso necessário.

Não sei se isso está totalmente correto. Não encontrei no manual uma especificação de LarguraModulo.

Por exemplo, no manual (versão 5.0) existe uma especificação de dimensão mínima de 25mm x 25mm (sendo 22mm de conteúdo e 3 mm para margem segura - "quiet zone").

Você encontrou alguma outra referência?

Acho que essa alteração poderia causar problemas, vou pedir uma segunda opinião. Lembro de ter relatos aqui no fórum de que algumas impressoras só imprimem com uma LarguraModulo = 3.

Sugiro testar com a minha unit acima.

  • Curtir 1

[]'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.
  • Moderadores
Postado
18 minutos atrás, EMBarbosa disse:

Acho que essa alteração poderia causar problemas, vou pedir uma segunda opinião. Lembro de ter relatos aqui no fórum de que algumas impressoras só imprimem com uma LarguraModulo = 3.

Para impressão da Daruma da NFCe emitida em contingência (a quantidade de caracteres no QrCode é maior, aumentando o QrCode) eu prefiro usar LarguraModulo = 3.

if DANFE_ESC.PosPrinter.Modelo = ppEscDaruma then
  DANFE_ESC.PosPrinter.ConfigQRCode.LarguraModulo := 3
else
  DANFE_ESC.PosPrinter.ConfigQRCode.LarguraModulo := 4;

if (Pos('?p=', NFE.NotasFiscais[0].NFe.infNFeSupl.qrCode) > 0) and (NFE.NotasFiscais[0].NFe.Ide.tpEmis = teNormal) then
  DANFE_ESC.PosPrinter.ConfigQRCode.LarguraModulo := DANFE_ESC.PosPrinter.ConfigQRCode.LarguraModulo + 1;

 

  • Curtir 1
Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado
23 horas atrás, EMBarbosa disse:

Não sei se isso está totalmente correto. Não encontrei no manual uma especificação de LarguraModulo.

Por exemplo, no manual (versão 5.0) existe uma especificação de dimensão mínima de 25mm x 25mm (sendo 22mm de conteúdo e 3 mm para margem segura - "quiet zone").

Você encontrou alguma outra referência?

Acho que essa alteração poderia causar problemas, vou pedir uma segunda opinião. Lembro de ter relatos aqui no fórum de que algumas impressoras só imprimem com uma LarguraModulo = 3.

Sugiro testar com a minha unit acima.

Boa Tarde!!!

EMBarbosa,

Exigência que eu citei seria com relação ao tamanho mesmo (25X25).

Não tinha conhecimento desse problema com a Daruma.

Fiz os teste com a sua unit alterada e ficou perfeito. Acredito que dessa forma vai resolver a necessidade de informar um número maior ou menor conforme a caso.

Essa alteração vai ser integrada no repositório?

Obrigado!!!

  • Consultores
  • Solution
Postado
19 minutos atrás, luizfr disse:

Essa alteração vai ser integrada no repositório?

Acabei de enviar ao SVN. Revisão 17587.

Você pode atualizar e testar.

Queira reportar qualquer problema.

  • Curtir 1

[]'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.
  • Este tópico foi criado há 1904 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.