Ir para conteúdo
  • Cadastre-se

giulianon

Membros
  • Total de ítens

    414
  • Registro em

  • Última visita

  • Days Won

    4

Tudo que giulianon postou

  1. Posso enviar sim Daniel. Vou hoje a tarde nesse cliente e já consigo o log. Att.
  2. É sim EMBarbosa, pois caso a impressora seja atualizada e passe a permitir arredondamento, serão necessárias as 3 casas para que o valor fiquei certo. Att.
  3. Bom pra encerrar o tópico, mesmo depois de todas as correções o arredondamento não funcionou nem mesmo no lacrador. Entrei em contato com sweda e após informar a versão do firmware da impressora me falaram que essa versão realmente só trunca. Então fica aqui o registro. Sweda Firmware 01.00.04 não trabalha com arredondamento. Solução: Trabalhar com truncamento ou atualizar o firmware. Att.
  4. Blz EMBarbosa! Segue anexo a correção. Vou fazer mais testes aqui. Qualquer coisa aviso. Obrigado pela ajuda! Att. ACBrECFSwedaSTX.zip
  5. Então EMBarbosa. Observando com mais calma percebi que a classe ecfSwedaSTX realmente recebe o retorno errado da ecf e que a mesma trata esse retorno setando 2 como default para as casas decimais A linha: fpDecimaisQtd := StrToIntDef(copy( TACBrECF(fpOwner).RetornaInfoECF( 'U2' ), 1, 1), 2 ) ; O retorno U2 para o modelo ST 1000 deveria ser o número de casas decimais 1,2 ou 3 mas está retornando [ o que é tratado pelo StrToIntDef e setado por padrão 2. Pra ter certeza que o problema está na impressora mesmo, utilizei o lacrador para consultar esse número de casas decimais e o mesmo mostra 0 com pode ver na figura em anexo. O próprio lacrador deve tratar esse retorno errado [ e mostrar o zero ali. Acredito que uma solução boa seria alterar a linha para no caso de erro ao obter o número de casas decimais, não ser setado 2 e sim o próprio fpDecimaisQtd. Assim: fpDecimaisQtd := StrToIntDef(copy( TACBrECF(fpOwner).RetornaInfoECF( 'U2' ), 1, 1), fpDecimaisQtd ) ; É isso? Ou é falei besteira? Att.
  6. Obrigado pela resposta EMBarbosa. Mas como os demais modelos estão retornando corretamente e tanto a classe como protocolo são o mesmo para todos os modelos, eu acredito que pode ser algum "bug" nesse modelo ou na versão do firmware mesmo. Nesse caso teríamos que diferenciar isso na classe.
  7. Bom dia colegas! Estou enfrentando um problema em um cliente, problema esse que só hoje pude investigar mais a fundo. Ele me relatou que estava tendo problemas com arredondamento nas impressoras Sweda ST 1000 (Ele tem todos os modelos 100, 120, 1000, 2000 e 2500). Só na ST1000 o arredondamento não estava funcionando corretamente. Observando o cupom fiscal impresso por esse modelo notei que a quantidade estava sendo impressa sempre com 2 casas decimais, apesar de no componente ACBrECF estar configurada pra 3. Mas como sei que a própria ecf poderia estar programada com 2 casas, solicitei a presença de um técnico através de intervenção fizemos a programação dela pra 3 casas para garantir que a ecf estivesse correta. Após essa programação o próprio técnico com o lacrador emitiu um cupom fiscal e ai sim a ecf imprimiu a quantidade com 3 casas como tem que ser. Feito isso voltei ao meu sistema e ao emitir um cupom fiscal ainda continuou saindo 2 casas na quantidade. Fui para o ECFTeste o mesmo ocorreu o que indicou que o "problema" está realmente na classe da ecfSwedaSTX. Depurando notei que apesar de estar configurado no componente ACBrECF pra quantidade com 2 casas, era enviado a ecf sempre 2. Indo mais a fundo vi que essa configuração de casas decimais é consultada na própria ecf e que por isso o que está no componente não está sendo respeitado. Bom diante disso forcei a utilização das 3 casas decimais setando essa configuração uma linha acima da linha que enviou o comando de vender o item. Dessa forma funcionou perfeitamente imprimindo as 3 casas decimais na quantidade. As minhas dúvidas agora são com relação a qual a melhor solução: 1-Manter como está agora setando as cadas decimais antes de cada item. Acredito que não terá problemas com ecfs que de fato só utilizem 2 casas decimais. 2-Fazer essa config fixando a mesma somente para o modelo ST1000. (bem bizarra essa) 3-Tentar corrigir a classe da ecfSwedaSTX para retornar o número de casas decimais corretamente. (Não sei se não afetará outros modelos fazendo isso). Aguardo um feedback de vocês. Att.
  8. Obrigado Régys! Tinha entendido que esses métodos PafMF_ArqMF e PafMF_ArqMFD eram pra gerar o arquivo no menu antigo. Mas tudo claro agora. Abraço!
  9. Bom resolvi gerando manualmente então se alguém enfrentar o mesmo problema segue ai. CONST ARQ_MF = 'arquivo_mf.bin'; ARQ_MF_TXT = 'arquivo_mf.txt'; // Gera arquivo MF binário if FileExists(ARQ_MF) then DeleteFile(ARQ_MF); getEcf.ArquivoMF_DLL(ARQ_MF); // Assina arquivo MF binário e gera arquivo txt com a assinatura EAD if FileExists(ARQ_MF_TXT) then DeleteFile(ARQ_MF_TXT); WriteToTXT(ARQ_MF_TXT, 'EAD' + paf.EAD.AssinarArquivoComEAD(ARQ_MF));
  10. Boa tarde! Também estou com problemas na geração do Arquivo MF e Arquivo MFD. Pelo que eu entendi o txt é gerado automaticamente. No meu caso estão sendo gerados somente os arquivos binários. Meu ACBr está atualizado e estou com a última versão do DarumaFW. Não acontece erro algum. Apenas não está gerando o txt com a assinatura EAD. Segue log da ecf para análise. Vou tentar gerar o txt manualmente enquanto aguardo por alguma dica que me ajude a resolver esse probleminha. Obrigado por enquanto! ecf_26022014145717.txt
  11. Eu já desenvolvi e funcionou bem, mas com a chegada da homologação do PAF tive problemas com as DLLs dos fabricantes para gerar as informações fiscais e acabei desenvolvendo um novo em Delphi. Hoje com o ACBR Monitor acredito que seja possível sim desenvolver um PDV legal em java ou em qualquer linguagem. Alguns fabricantes de ECFs também já disponibilizam muito material e ferramentas para o desenvolvimento em java. De qualquer forma baseado na experiência que eu tive, o desempenho do um PDV feito com Delphi e ACBr é superior ao feito em Java. Mas isso foi comigo Pode ser que com outros colegas tenha sido diferente. Abraço!
  12. Na impressora Sweda eu sei que é possível configurar 3 casas decimais tanto em valor quanto em quantidade, mas somente com intervenção. Não sei se a bematech permite. Seria bom sofrer um pouco com o suporte deles e tentar sanar essa dúvida. Att.
  13. Eu já tinha passado por isso e feito o mesmo que você, logando o que vinha realmente do scanner e de fato vinha o código errado(diferente da etiqueta), mas não entendia como podia o código ser lido "errado" e passar na função que valida o código de barra. Seria muita coincidência. É por isso então. Espero que tenha uma maneira de desabilitar. Vou acompanhar o post. Att.
  14. Qual marca/modelo de impressora fiscal você está utilizando?
  15. Então Daniel. Foi o que eu acabei de fazer. Realmente só Daruma e Bematech estão disparando o evento de pouco papel. As demais marcas (Epson, SwedaSTX (Sweda dispara) e Urano (Fiscnet)) que eu citei não disparam o evento, mas retornam corretamente o valor da flag pouco papel quando a mesma é consultada. PS: Fiz os testes com simuladores agora, só pra ter certeza de que não era defeito em algum sensor da ecf. Resultado foi o mesmo.
  16. Aproveitando o post, fiquei em dúvida em uma questão. Fiz o teste agora com 5 marcas de ecf e percebi que a Daruma e Bematech disparam o evento de pouco papel (ACBrECF.OnMsgPoucoPapel), quando de fato a impressora começa a ficar com pouco papel. Mas Sweda, Epson e Urano (Fiscnet) esse evento não é disparado em nenhuma situação. Pra resolver eu mesmo estou consultando a flag do papel e informando ao usuário Essas 3 marcas funcionam assim mesmo? Att.
  17. O ACBrLCB já faz essa fila automaticamente. Tente dar uma olhada nesse post http://www.forumweb.com.br/foruns/topic/74093-pequenos-problemas-com-acbr/ O Daniel explica certinho como implementar a rotina pra tratar esse "escaneamento" rápido. Att.
  18. Ops! Faltou o anexo Segue. Att. ACBrECFSwedaSTX.pas
  19. Boa tarde! Fiz uma correção na impressão de cheque do protocolo ecfSwedaSTX, pois o mesmo não estava imprimindo a observação no cheque. Segue o trecho alterado: procedure TACBrECFSwedaSTX.ImprimeCheque(Banco: String; Valor: Double; Favorecido, Cidade: String; Data: TDateTime; Observacao: String); var Moeda,Moedas:String; sValor:String; sData:String; begin {Apesar de implementadao, não foi possível testar essa rotina por falta de equipamento que tivesse o recurso} Banco := IntToStrZero(StrToIntDef(Banco,1),3) ; Favorecido := padL(Favorecido,80) ; Cidade := padL(Cidade,30) ; Moeda := padL('Real',20) ; Moedas := padL('Reais',20) ; sValor := FormatFloat('#0.00',Valor); sData := FormatDateTime('dd/mm/yyyy',Data); EnviaComando('14|'+Banco+'|'+sValor+'|'+Moeda+'|'+Moedas+'|'+Favorecido+ '|'+Cidade+'|'+sData+'|N|N|'+Observacao); // Linha alterada end; Segue anexo também o arquivo fonte. Não estou com a última versão dos fontes do ACBr, então pode ter mais código alterado. Dessa forma favor considerar somente a linha indicada. Att.
  20. Agora eu que não estou entendendo. Você mencionou que queria imprimir um cupom NÃO FISCAL. Agora são ITENS DE VENDA, que nesse caso devem ser impressos em um cupom FISCAL, até porque em um cupom NÃO FISCAL não é permitido. Seu puder me dizer exatamente o que quer fazer com mais detalhes, posso te ajudar. Att.
  21. Verifique na pasta exemplos que acompanha o ACBr, pois lá tem o programa ECFTeste que permite que você possa testar praticamente todas as opções disponíveis em impressoras fiscais. Como os fontes estão disponíveis você pode tranquilamente estudá-los e implementar o que for necessário no seu sistema. Att.
  22. Bom dia colegas! Dei uma lida agora no post que o Daniel fez, quando implementou o suporte USB na Epson, por sinal um post que eu acompanhei por um bom tempo, e então só só pra confirmar e acho que ficar claro pra quem ainda tem dúvida: Impressoras que suportam comunicação USB utilizando a DLL e informando USB na propriedade PORTA do ACBrECF - Daruma - Epson Impressoras que suportam comunicação USB utilizando o driver emulando USB<->Serial e informando a COM na propriedade PORTA do ACBrECF - Sweda Impressoras que AINDA não tem suporte a comunicação USB, necessitando de cabo conversor, driver e informando a COM na propriedade PORTA do ACBrECF - Bematech (DLL em fase adaptação para suportar a comunicação) - Urano? - Elgin? - Dataregis? Correto? Att.
  23. Você não pode ajustar a data/hora de uma impressora para uma data/hora inferior a data/hora do último documento emitido por ela. No seu caso terá que deixar ela parada por 1 dia para assim poder ajustar a data/hora.
  24. giulianon

    ACBrSMS

    Beleza Régys. Obrigado mais uma vez! Att.
×
×
  • 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.