Membros Pro Próton Sistemas Posted July 16 Membros Pro Posted July 16 Bom dia! Gostaria de compartilhar com vocês um cenário que tem ocorrido de forma intermitente. São realizadas impressões a partir da imagem do DANFE utilizando o TACBrPosPrinter(ImprimirCmd()). Acontece que, a cada X impressões, não há um padrão, uma impressão sai com caracteres especiais, conforme imagem abaixo: Uma reimpressão é realizada sem problemas. Já se depararam com situação semelhante? Quais outras informações seriam necessárias para buscarmos identificar a questão? Atenciosamente,
Consultores Daniel InfoCotidiano Posted July 16 Consultores Posted July 16 Bom dia ! Qual marca e modelo da sua impressora ? Quando ela é instalada, ela instala emulador de porta com ? O Controle de porta está ativo? Daniel de Morais (Infocotidiano) Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Discord
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 (edited) Bom dia, Daniel! Qual marca e modelo da sua impressora ? >> Acontece com as impressoras Daruma(DR800), Bematech(mp4200) e Elgin(i9), sendo com a Elgin a maior incidência. Quando ela é instalada, ela instala emulador de porta com ? >> Sim. as impressoras que mencionei emulam uma porta com no SO. O Controle de porta está ativo? >> Sim. Obrigado pela atenção. Edited July 16 by Próton Sistemas
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 15 minutos atrás, Próton Sistemas disse: Bom dia, Daniel! Qual marca e modelo da sua impressora ? >> Acontece com as impressoras Daruma(DR800), Bematech(mp4200) e Elgin(i9), sendo com a Elgin a maior incidência. Quando ela é instalada, ela instala emulador de porta com ? >> Sim. as impressoras que mencionei emulam uma porta com no SO. O Controle de porta está ativo? >> Sim. Obrigado pela atenção. Favor desconsiderar a Daruma como objeto da sua análise.
Consultores Daniel InfoCotidiano Posted July 16 Consultores Posted July 16 Eu tenho uma i9 aqui e nao ocorre o problema. mas nao uso emulador de porta COM. Utilizando utilitario da elgin, deixei apenas conexao com USB Pode ser problema com o prolific driver que emula a com. Vc pode realizar um teste. neste post, mostra como deixar USB ou com Daniel de Morais (Infocotidiano) Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Discord
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 (edited) Daniel, na Elgin, que possui o maior número de ocorrência, já havíamos colocado como USB nativa e ainda assim o problema continua a ocorrer. Não há um padrão, ou seja, há dia sem ocorrência e quando ocorre, não há um indício. Por exemplo, já houve casos de ocorrer na impressão de abertura do caixa, além da impressão do danfe. Edited July 16 by Próton Sistemas
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 Foi feita até atualização do firmware.
Fundadores Daniel Simoes Posted July 16 Fundadores Posted July 16 Precisamos analisar um modelo de cada vez... Cada impressora, tem a sua forma de configuração e peculiaridades... A imagem do problema em questão, é referente a qual impressora ? Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 Boa tarde, Daniel Simoes e Daniel InfoCotidiano. "A imagem do problema em questão, é referente a qual impressora ?" >> Elgin I9.
Fundadores Daniel Simoes Posted July 16 Fundadores Posted July 16 A Elgin I9, é uma das melhores impressoras, para impressão emulada em Epson EscPos Como você configura a "Porta" no componente? para a I9, apenas atribua "USB" Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Consultores Victor H. Gonzales - Panda Posted July 16 Consultores Posted July 16 remova as configurações de Serial, passe na configuração de porta como USB no protocolo passe como ppEscPosEpson. isso pode ser erro de protocolo ou tambem o byte corrompido da imagem que ele não conseguiu converter a imagem. se é em escpos, uma alternativa é impressão direta e não modo gráfico Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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 !! "Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci "Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 (edited) @Victor H. Gonzales - Panda 1 - remova as configurações de Serial, passe na configuração de porta como USB Já foi definida como USB. 2 - no protocolo passe como ppEscPosEpson. Esse já é o modelo que utilizamos (ACBrPosPrinter1.Modelo := TACBrPosPrinterModelo.ppEscPosEpson) 4 - se é em escpos, uma alternativa é impressão direta e não modo gráfico Essa mudança seria mais complexa pra gente. Ressaltando que numa reimpressão, em nenhum dos caso o houve a impressão com caracteres especiais, como na impressão. Edited July 16 by Próton Sistemas
Membros Pro Próton Sistemas Posted July 16 Author Membros Pro Posted July 16 @Daniel Simoes Respondendo ao seu questionamento relacionado a "Como você configura a "Porta" no componente? para a I9, apenas atribua "USB"": Utilizamos o método ACBrPosPrinter1.Device.AcharPortasUSB( portas ) , onde portas é um TStringList que será percorrido e onde buscamos informações relacionadas ao nome, modelo e fabricante do equipamento e setamos o ACBrPosPrinter1.Porta com o retorno. Aqui na minha máquina por exemplo como porta obtenho do método : 'USB:Printer POS-80'
Fundadores Daniel Simoes Posted July 16 Fundadores Posted July 16 parece tudo correto... Por favor nos dê mais subsídios, de como o problema ocorre, e como podemos reproduzir ele Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Consultores Daniel InfoCotidiano Posted July 17 Consultores Posted July 17 @Próton Sistemas Bom dia ! Por favor, consegue anexar aqui p nós a primeira página do auto-teste da i9 ? Semelhante a esta: Desligue a impressora, ligue com o botao avanco pressionado. apos o termino, pressione avanco novamente p liberar do teste. Daniel de Morais (Infocotidiano) Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Discord
Membros Pro Próton Sistemas Posted July 17 Author Membros Pro Posted July 17 (edited) Bom dia a todos! @Daniel Simoes "parece tudo correto... Por favor nos dê mais subsídios, de como o problema ocorre, e como podemos reproduzir ele" Essa é a grande questão. Não conseguimos simular e nem há um indício. Ocorre de forma intermitente e sem um padrão.... Já ocorreu na impressão do relatório de abertura do caixa, mas ocorre com mais frequência, mesmo que de forma intermitente, durante a impressão de um danfe a cada X. @Daniel InfoCotidiano Edited July 17 by Próton Sistemas
Membros Pro Próton Sistemas Posted July 17 Author Membros Pro Posted July 17 Essa impressão do auto-teste foi de uma impressora sem atualização do firmware, mas as que estão com o firmware atualizado continuam ocorrendo.
Fundadores Daniel Simoes Posted July 17 Fundadores Posted July 17 O ACBrPosPrinter é sem dúvida um dos nossos componentes mais utilizados... note que não temos relatos semelhantes no forum ou Discord... e como o ACBrPosPrinter apenas envia o Texto com comando EscPos para a impressora eu creio que dificilmente o problema seja nele... pois uma falha no Escpos enviado não geraria erro semelhante na impressora... Algumas suspeitas: - Defeito no cabo da Impressora - Defeito na Impressora - Resíduo de relatório anterior, do Spool do Windows... - Uso concorrente da impressora (ACBr e Spool) Se seu sistema envia outros relatórios a impressora, usando Fortes, Fast ou outro gerador de relatórios.... foque nas duas últimas opções Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Consultores Victor H. Gonzales - Panda Posted July 17 Consultores Posted July 17 esse buffer de imagem geralmente é de qual tamanho? Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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 !! "Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci "Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"
Membros Pro Próton Sistemas Posted July 17 Author Membros Pro Posted July 17 @Victor H. Gonzales - Panda Varia bastante. Mas por exemplo, a imagem que anexei a este post como exemplo da ocorrência do problema, completa, possui 193K. Para a impressão de imagem algumas impressoras não suportavam enviar toda a imagem de vez. 18k é o máximo que observamos em alguns modelos e por isso definimos como quantidade de envio ACBrPosPrinter1.Device.SendBytesCount := 1024 * 16; Controlamos tb o intervalo de envio, pois algumas impressoras não suportaram o envio completo e por garantia, definimos o mesmo tempo para todas ACBrPosPrinter1.Device.SendBytesInterval := 100;
Membros Pro Próton Sistemas Posted July 17 Author Membros Pro Posted July 17 (edited) 14 minutos atrás, Próton Sistemas disse: @Victor H. Gonzales - Panda Varia bastante. Mas por exemplo, a imagem que anexei a este post como exemplo da ocorrência do problema, completa, possui 193K. Para a impressão de imagem algumas impressoras não suportavam enviar toda a imagem de vez. 18k é o máximo que observamos em alguns modelos e por isso definimos como quantidade de envio ACBrPosPrinter1.Device.SendBytesCount := 1024 * 16; Controlamos tb o intervalo de envio, pois algumas impressoras não suportaram o envio completo e por garantia, definimos o mesmo tempo para todas ACBrPosPrinter1.Device.SendBytesInterval := 100; Ou seja, neste caso o texto era relativamente "grande", mas já houve ocorrência em cenários menores. Tendo havido um caso onde o problema ocorreu na abertura do caixa no momento da impressão da abertura (primeira impressão do dia). Edited July 17 by Próton Sistemas
Fundadores Daniel Simoes Posted July 17 Fundadores Posted July 17 Humm.. algum problema no envio de imagem, poderia sim, causar um problema semelhante ao da foto original... Você envia o Logotipo ? Se SIM, Seria mais rápido (e livre de problemas) gravar o Logo na memória da impressora, e só enviar o comando de impressão de Logo Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976.
Membros Pro Próton Sistemas Posted July 18 Author Membros Pro Posted July 18 (edited) Bom dia! @Daniel Simoes @Daniel InfoCotidiano @Victor H. Gonzales - Panda "Você envia o Logotipo ? Se SIM, Seria mais rápido (e livre de problemas) gravar o Logo na memória da impressora, e só enviar o comando de impressão de Logo" Sim, enviamos a logo. Como fazemos? 1 - Temos um TACBrNFeDANFCEFR conectado ao TACBrNFe e a partir dele fazemos um export para um TfrxBMPExport. 2 - Fazemos um render bitmap a partir do arquivo exportado para passarmos como parâmetro para o TACBrPosPrinter.ImprimirCmd(RenderBitmap). 3 - Como mencionado, não mandamos a imagem de uma única vez, "fatiamos" em blocos de aproximadamente 16k, com intervalos de 100ms entre os blocos. Sua sugestão, se entendi bem, seria não carregarmos a logo como fazemos e passarmos a enviá-la para a memória da impressora. Mas isso precisaria ser feito através do software de cada impressora. Hoje temos mais mil impressoras ativas, o que tornaria complexa essa mudança. Teríamos alguma outra alternativa para evitarmos o problema, mas mantendo nossa arquitetura?? Edited July 18 by Próton Sistemas
Membros Pro Próton Sistemas Posted July 18 Author Membros Pro Posted July 18 Uma outra questão a ser ressaltada, é que temos clientes que não usam logo, mas ocorre o problema. Relatórios de fechamento e abertura não possuem logo, mas também ocorrem
Membros Pro Próton Sistemas Posted July 18 Author Membros Pro Posted July 18 Segue um exemplo recente onde no envio de um dos blocos de 16kb, algo de muito estranho ocorreu...
Recommended Posts