Ir para conteúdo
  • Cadastre-se

EMBarbosa

Consultores
  • Total de ítens

    9.424
  • Registro em

  • Última visita

  • Days Won

    117

Tudo que EMBarbosa postou

  1. Se ele está cancelando a transação ao comandar o pagamento é porque o ACBrTEFD entendeu que o pagamento não foi efetivado no ECF. Verifique o que pode estar acontecendo nesse sentido. Por exemplo, talvez a função de retorno do estado do ECF não esteja correta. Veja essa parte do seu log: -- 24/01 16:21:20:234 - InfoECF: ineEstadoECF -- 24/01 16:21:20:234 - Ret: P -- 24/01 16:21:20:234 - InfoECF: ineSubTotal -- 24/01 16:21:20:234 - Ret: 50 -- 24/01 16:21:20:235 - TEF_DIAL ECFPagamento: Indice: 02 Valor: 50,00 -- 24/01 16:21:20:235 - InfoECF: ineSubTotal -- 24/01 16:21:20:235 - Ret: 50 -- 24/01 16:21:20:236 - InfoECF: ineTotalAPagar -- 24/01 16:21:20:236 - Ret: 0 -- 24/01 16:21:20:236 - ImprimirTransacoesPendentes -- 24/01 16:21:20:236 - InfoECF: ineEstadoECF -- 24/01 16:21:20:236 - Ret: P -- 24/01 16:21:20:237 - FinalizarCupom -- 24/01 16:21:20:237 - BloquearMouseTeclado: SIM -- 24/01 16:21:20:237 - InfoECF: ineEstadoECF -- 24/01 16:21:20:238 - Ret: P -- 24/01 16:21:20:238 - InfoECF: ineSubTotal -- 24/01 16:21:20:238 - Ret: 50 -- 24/01 16:21:20:238 - InfoECF: ineTotalAPagar -- 24/01 16:21:20:239 - Ret: 0 -- 24/01 16:21:20:239 - InfoECF: ineEstadoECF -- 24/01 16:21:20:239 - Ret: P Mesmo depois de FinalizarCupom, o estado do ECF continua P. Se eu não me engano, P é de Pagamento. O ECF deveria ter fechado o cupom. Veja também o funcionamento do programa de exemplo. Daí você pode comparar os logs.
  2. Mas você definiu essas listas e o ponteiro para elas? Porque no exemplo que você passou, você está mandando um int64 como parâmetro. Não um ponteiro. Veja:
  3. Eu não sei se você reparou, mas os arquivos tem a data e hora de modificação muito semelhantes. Exemplo: Talvez seja uma coincidência. Mas pode ser algum sistema agendado. Por exemplo de backup.
  4. Acho difícil. Você não está passando strings para as funções, está? Eles tem algum exemplo de versão de implementação para Delphi/Lazarus que você possa testar?
  5. Acabei de enviar uma alteração no componente que vai fazer esse arredondamento assim que você enviar um valor para Titulo.ValorDocumento. Queira por favor, atualizar e testar com essa versão que eu enviei: Revisão 16398 -- ACBrBoleto -- [*] Ao setar o valor do documento em um título, o ACBrBoleto agora arredonda o valor para 2 casas decimais. Isso corrige o problema de valor de documento estar diferente da LinhaDigitada.
  6. O Refactoring já está no ar. Vejam o seguinte tópico:
  7. Eita! Complicado mesmo. Talvez seja melhor entrar em contato com o suporte da embarcadero.
  8. Como eu disse, você precisa pensar nos prós e contras. Depende da sua aplicação, do tipo de interação que as páginas vão ter com a sua aplicação, do tipo de usuário que vai atender, da máquina que eles tem, do tempo que você tem pra desenvolver, etc... Eu já vi um sistema de notificações sendo feito com o browser. Se você achar que é mais simples, apesar de estar embutindo um browser na sua aplicação, não vejo motivo pra não fazer.
  9. Na verdade, Currency também tem valor quebrado. Ele trabalha até 4 casas decimais. Eu consegui reproduzir com os valores inversos, ou seja, a linha digitável foi arredondada para baixo. Usando o demo alterei o valor para 1978,545: ValorDocumento := 1978.545; Resultado: Infelizmente, o código anexado também não funciona. Passa a dar problema com outros valores, como por exemplo 1978,635. É muito provável que seu problema se iniciou com o que o Amarildo mencionou acima: Então eu sugiro você verificar isso até que tenhamos uma outra solução. A correção definitiva talvez seja alterar a formatação. Mas não tentar fazer vários arredondamentos como está sendo feito no código anexo. Teríamos que usar a mesma formatação tanto para o campo "Valor do Documento" no relatório (exemplo: ACBrBoletoFCFortesFr.pas) e como na montagem da linha digitável (exemplo ACBrBancoBancoob.pas). Mas fazer isso para todos os bancos.
  10. CefSharp ou webbrowser fazem a mesma coisa. São bindings para um browser. Eles não são simplesmente renderizadores de html+js+CSS. Você está embutindo um browser na sua aplicação. Você precisa pensar nos prós e contras. Você pode fazer tudo isso implementando na sua aplicação esses sistemas de notificação.
  11. O componente WebBrowser é como embutir um browser na sua aplicação. Se o usuário puder fazer isso por fora, no browser da preferência dele, eu usaria isso. Mas se você quer realmente dentro do seu sistema, permitir o usuário navegar no seu site, telas providas pelo seu servidor, então você não tem muita opção a não ser usar um componente WebBrowser.
  12. Isso é apenas para login? Não seria mais fácil você comunicar com seu servidor via REST?
  13. Eles mudaram bastante os sites, ficou uma confusão na minha opinião. Mas basta você fazer o login usando suas credenciais da EDN, a mesma que permite você fazer os downloads. Se necessário, você pode criar uma nova conta ou recuperar a senha no site: http://members.embarcadero.com/
  14. Esse é o site de bugs da Embarcadero. Ele substitui o Quality Central que está fora do ar há algum tempo. Tinha um bom tempo que eu não entrava lá, então não iria saber responder. Entrei lá agora e fiz uma busca bem rápida pra ver se encontrava algo pra você. Veja o que achei: https://quality.embarcadero.com/browse/RSP-23298 É algo semelhante mas em vez de ser o TEdit é o TNumberbox. O detalhe nesse chamado é que o quem o criou não menciona que o ponto funciona. Sugiro você avaliar.
  15. Cleber, Eu acredito que o que o Daniel disse faz algum sentido sim. Talvez não exatamente o FormatSettings, mas alguma configuração de localização. Veja o que você escreveu: Quando é que um teclado do tipo decimal funcionaria apenas o ponto? A conclusão lógica é: quando estiver configurado para outra localização onde o separador de decimal é o ponto. Isso parece esperado. Pelo menos é a impressão da descrição na documentação: Se tem apenas 10 teclas é de "0 a 9". Isso pode ser porque ou era um bug das versões anteriores ou foi introduzido um bug. Já tem um tempo que entrei, mas tinha vários bugs relacionados ao teclado virtual no site Quality Portal.
  16. Na verdade você não pode simplesmente ir testando. Você precisa verificar qual o modo da dll realmente trabalhar. Essa configuração é de acordo com a dll, não com o seu programa. Ao invés de usar variáveis para implementar, tente fazer o acesso direto a dll primeiro, usando a diretiva "external". Se for o caso, faça um programa separado só pra testar a comunicação com a DLL. A longo prazo, sugiro mudar seu modo de fazer. Crie classes/objetos separados para cada impressora. Fazemos isso em diversos componentes ACBr como o ACBrECF, ACBrBAL, ACBrETQ.
  17. Não tive nenhum problema semelhante. Pelo menos em tese, o spool e o componente não deveriam influenciar um ao outro.
  18. Não sei se compreendi corretamente o primeiro ponto. Talvez você pudesse ignorar um certo número de vezes que a balança tiver lido zero. Teoricamente estar estabilizado deveria ser o retorno da balança. Teria que verificar se no manual de comunicação existe esse retorno e se o componente está tratando adequadamente. Confesso que tive um pouco de dificuldade de ler o código. Há muitas variáveis semelhantes que se confundem com propriedades do componente (PesoGravado, PesoLido, UltPesoLido, ACBrBAL1.UltimoPesoLido). Baseado no que tinha dito antes eu pensei no seguinte: INICIO | |- Balança OFF (não monitorando) | |- Recebe OP | |Loop de caixas... |- PróximaCaixa | |Pegar peso estável | |- Blança ON | | | |- (quando peso for estável) | | | |- Balança OFF | |- Faz validações valor peso | |- Se OK | |- Imprime etiqueta | |- Continua (Loop de caixas) | |- Se não OK | |- Mensagem na tela | |- Volta (Pegar peso estável) | |- Se Ultima Caixa ---> FIM E parece que o problema maior é a detecção do peso estável.
  19. já... depende da gravidade da corrupção: http://www.firebirdfaq.org/faq324/ https://ib-aid.com/ru/articles/how-to-repair-a-corrupt-firebird-database/ Se esses procedimentos falharem, você pode adquirir uma ferramenta que é especializada nesse tipo de problema como o IBSurgeon FirstAID. Se não me engano você pode comprar com desconto no site Firebase.com.br
  20. No momento não tem nada feito neste sentido. Pelo visto é algo semelhante ao arquivo SPED.
  21. Você não mencionou qual é o problema.
  22. Tópico relacionado:
  23. Isso depende da marca e modelo da impressora. Geralmente o manual explica como deve-se fazer, e não costuma ser muito complicado. Mas talvez, você deva adaptar seu programa para lidar com as duas maneiras, permitindo uma configuração para usar de uma ou outra forma.
  24. Acabei de reinstalar aqui no Lazarus 2.0RC3 e foi tranquilo. Você precisa recompilar a IDE. Talvez seja necessário fazer uma limpeza antes.
  25. A ideia seria procurar no sistema que gera o comprovante alguma configuração nesse sentido. Não estou familiarizado com essa impressora nem com o sistema do Banco que você mencionou, por isso não sei dizer exatamente onde.
×
×
  • 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.