Ir para conteúdo
  • Cadastre-se

Daniel Simoes

Fundadores
  • Total de ítens

    26.604
  • Registro em

  • Última visita

  • Days Won

    753

Tudo que Daniel Simoes postou

  1. Por favor veja como está no Demo do SATTeste.exe InfAdic.infCpl := ACBrStr('Acesse www.projetoacbr.com.br para obter mais;informações sobre o componente ACBrSAT;'+ 'Precisa de um PAF-ECF homologado?;Conheça o DJPDV - www.djpdv.com.br'); A quebra de linhas nas observações do SAT sempre foi o ';' A Impressão do SAT e do NFCe são fontes completamente diferentes...
  2. Repare bem... o seu problema de loop infinito é devido uma outra customização nos seus fontes... if RG = nil then begin CarregaRelatoriosGerenciais ; // Se não recarregar fica retornando sempre (RG = nil) (Indice := 2) raise EACBrECFERRO.create( ACBrStr('Relatório Gerencial: '+IntToStr(Indice)+ ' não foi cadastrado.' )); Você está chamando o CarregaRelatoriosGerenciais dentro do "if RG = nil then"... Isso nunca existiu nos fontes originais Por favor use os fontes originais para testar e reportar Bugs
  3. No meu último commit, quando fiz um merge de algumas propriedades de impressão que existem no DANFE EscPos da NFCe... acidentalmente removi alguns itens da impressão do Extrato do SAT... No SAT há a possibilidade de demonstrar os Impostos por Item ... Apliquei uma correção no SVN, que deve corrigir
  4. No Lazarus/FPC já estou usando o Trunk2 a mais de 2 meses
  5. Use Pascal... Ex: LeftStr(Variavel, 20) Sempre imprimirá 20 caracteres no máximo...
  6. Notei que o código que você copiou acima estava diferente dos fontes originais... talvez isso explique o problema nos seus fontes... Achei um pequeno problema, com o "encoding".. Relatórios com acentuação no título na funcionariam.. apliquei uma correção
  7. Não consegui reproduzir o problema do Relatório Gerencial... Favor informar um passo a passo... Não compreendi a necessidade da solução proposta... Observe que a "CarregaRelatoriosGerenciais" já é chamada, quando o código passa por: "AchaRGIndice"
  8. Sim, esse fórum novo tem várias vantagens e um Visual mais simples e intuitivo de usar... mas os plugins antigos são incompatíveis... O Invision Power Board é um programa poderoso, e muito customizável.. Porém como a versão é nova, muitos dos antigos plugins precisarão ser reescritos ou revisados...
  9. Nessa nova versão a Invision removeu essa opção... no lugar dela, eles criaram um conceito de fórum "Perguntas e Respostas" parecido com o StackOverflow Tente ajustar alguns dos fóruns para esse modelo, mas achei estranho... Há vários pedidos de retorno da funcionalidade "Resolvido" no fórum deles (Invision)... acho que logo teremos a funcionalidade de volta...
  10. Não compreendi o que você quiz dizer... poderia anexar uma imagem exemplificando ?
  11. Provavelmente retorna o valor correto... mas o ACBr não tem controle sobre o XML retornado
  12. Apliquei uma possível correção no SVN, (trunk2)
  13. Humm.. podemos ver que o A.V. ocorre quando o PosETX = 0...isso pode ser o problema.. mas se compararmos esse bloco do "trunk" com o "trunk2" eles estão identicos... A falha definitivamente é no Delphi (PosEx)... que se perde quando recebe um índice fora da faixa... Veja como está no FPC (há uma verificação do Indice informado) Len := length(S); if (Offset < 1) or (Offset > SizeUInt(Length(S))) then exit(0); Podemos aplicar um workaround para a situação, usando: 992 if PosETX > 0 then 993 PosSTX := PosEx( STX , Result, PosETX); // Acha inicio do proximo Bloco
  14. Por favor anexe (zip) os fontes modificados
  15. Analise os parâmetros de entrada em PosEx... pode ser que esteja algo que a função atual não esteja sendo capaz de tratar.. Na ACBrUtil há uma versão de PosEx, que é usada apenas para versões inferiores ao D7... experimente mudar a classe da Sweda e a ACBrUtil, para usar ela...
  16. Obrigado pelo retorno... Realmente a sintaxe dos monitores usa aspas dupla para Strings: http://acbr.sourceforge.net/ACBrMonitor/ACBrMonitor.html?SintaxedosComandosACBr.html
  17. Em relação ao cancelamento... por favor crie um novo tópico, caso contrário fica difícil manter o histórico do que já foi resolvido... A sua solução proposta pode corrigir o Bug de já existir um CFeCanc carregado na memória... mas por favor abra um novo tópico e anexe os fontes modificados para analise...
  18. Acho que isso iria descaracterizar o conceito de ECFVirtual... a aplicação deixaria de se comportar como se estivesse falando com um ECF... Mas todos os "Virtuais" possuem o evento "QuandoGravarArqINI" e "QuandoLerrArqINI"... isso permite que a sua aplicação manipule o conteúdo do .INI de acordo com as suas regras de negócios...
  19. Depende do Modelo... na Daruma acho que nenhuma configuração é necessária.. (pois ela só aceita uma imagem)... Na Epson e Bematech, você precisa informar a posição onde o Logo Tipo foi gravado... e opcionalmente, informar um Fator Horizontal e Vertical para aumentar o Logotipo Veja a propriedade ACBrPosPrinter.ConfigLogo e o exemplo do projeto:http://www.projetoacbr.com.br/forum/files/file/364-posprintertesteexe/
  20. Para Bematech vc precisa usar modelo "ppEscBematech" Teste ainda, a aplicação PosPrinterTeste.exe
  21. De acordo com a sua imagem, o bug pode ser do Delphi... pois a função "PosEx" está na "StrUtils" Eu estou usando essa classe a um bom tempo, e não notamos problemas de A.V. (uso Lazarus/FPC)
  22. A modificação proposta em TACBrECFVirtualClass modificaria o comportamento de TODOS os ECFs Virtuais... Fiz uma refatoração, introduzindo um novo método para poder sobrescrever apenas essa verificação nas classes filhas.. Modificação já envia para o Trunk2
  23. Acho que a impressora permite controlar a Largura das barras (fina e grossa)... mas quem calcula a largura total do Cod.Barras é a própria Impressora
  24. o EscPos não usa esse Picture... Você precisa usar um programa do Fabricante para carregar o Logo na memória da Impressora
×
×
  • 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...