Ir para conteúdo
  • Cadastre-se

Daniel Sonda

Membros
  • Total de ítens

    30
  • Registro em

  • Última visita

Últimos Visitantes

6.336 visualizações

Daniel Sonda's Achievements

  1. Problema corrigido. Primeiro, parabéns! Segundo, muito obrigado!
  2. Boa tarde. Alguma novidade em relação ao problema descrito? Nosso serviço de importação de CTe está travando de hora em hora, as vezes até menos. Posso ajudar em algo?
  3. Estou enfrentando um problema que parece ser um vazamento de memória. Tenho vários arquivos XML de CTe para importar pro sistema, então dentro de um loop eu crio um TACBrCTe, carrego o arquivo via LoadFromFile(caminhoarquivo, False), leio os dados necessários e depois destruo o TACBrCTe via Free. Isso é feito a cada 5 segundos, num serviço de monitoramento de arquivos de uma pasta. Recentemente atualizei a biblioteca e agora passou a usar a nova versão com a diretoriva USE_ACBr_XMLDOCUMENT. A cada ciclo de execução a memória RAM consumida pelo processo vai aumentando, até que após algum tempo causa o erro abaixo: Já tentei criar o TACBrCTe fora do loop e executar Conhecimentos.Clear antes de carregar cada arquivo, mas o resultado é o mesmo. Acabei de baixar as DLLs da LibXml2 daqui https://svn.code.sf.net/p/acbr/code/trunk2/DLLs/LibXml2/x86/ e também não resolveu. Se quiserem reproduzir o problema, criei uma pequena aplicação pra isso (imagem da tela abaixo). Está em anexo. Basta informar uma pasta com vários arquivos XML, clicar no botão Processar várias vezes e monitorar o consumo de RAM. No meu caso os arquivos tem extensão .txt, então se forem utilizar .xml, terão que alterar a linha abaixo do clique no botão Processar. Arquivos := TDirectory.GetFiles(edtPastaXml.Text, 'XMLCTE_*.*'); ACBrCTe.rar
  4. A leitura de um arquivo de retorno CNAB 400 do banco 274 MoneyPlus, atualmente está sendo feita pela classe base TACBrBancoClass, onde a agência e conta são extraídos pelas linhas abaixo: // A leitura deverá ser feita a partir da posição 26 devido ao fato de não existirem agências bancárias com mais de 4 (quatro) algarismos. rAgencia := trim(Copy(ARetorno[1], 26, ACBrBanco.TamanhoAgencia)); rConta := trim(Copy(ARetorno[1], 30, DefineTamanhoContaRemessa)); Entretanto, no manual do banco (página 11), relativo ao layout da remessa, a composição do campo que identifica a empresa beneficiária, que também se aplica ao campo correspondente no retorno, segue o seguinte formato: Sendo assim, eu implementei o método LerRetorno400 na classe TACBrBancoBradescoMoneyPlus, copiando o código fonte da classe base e alterando apenas as linhas abaixo, para extrair a agência e a conta corretamente, segundo o layout descrito no manual. // A leitura deverá ser feita a partir da posição 24 devido ao fato de não existirem agências bancárias com mais de 4 (quatro) algarismos. rAgencia := trim(Copy(ARetorno[1], 24, ACBrBanco.TamanhoAgencia)); rConta := trim(Copy(ARetorno[1], 28, DefineTamanhoContaRemessa)); Em anexo estão o manual do banco e a unit alterada. Manual CNAB 400 - Banco 274.pdf ACBrBancoBradescoMoneyPlus.pas
  5. No portal da NFe não consta mais a contingência de MG, mas a consulta de cadastro de um CPF continua retornando: cStat>257</cStat> <xMotivo>Rejeicao: Solicitante nao habilitado para emissao da NF-e</xMotivo>
  6. Alguma novidade sobre esse problema? Também estou recebendo o mesmo erro. A empresa é de SC, mas o cliente é de MG. Vi que no post abaixo foi dado uma resposta, mas não ficou claro o motivo.
  7. https://forum.fast-report.com/en/discussion/2929/how-do-i-fix-quot-canvas-does-not-allow-drawing-quot Diz que é preciso ter uma impressora padrão válida. Estava gerando esse erro apenas em modo de debug com FastReport. Defini uma impressora padrão e parou de ocorrer.
  8. Conforme o manual em anexo, o código de juros de mora para o banco Cresol no layout 240 segmento P é: 1 - (real ao dia) 2 - Percentual ao mês Atualmente está enviando "0" para valor e "1" para percentual, conforme o trecho de código abaixo: if (CodigoMora = '') then begin CodigoMora := '0'; if (ValorMoraJuros > 0) then // cjValorDia, cjTaxaMensal begin if (CodigoMoraJuros = cjValorDia) then CodigoMora := '0' else if (CodigoMoraJuros = cjTaxaMensal) then CodigoMora := '1'; end; end; Quando o valor de juro de mora é maior que zero, ocorre o erro em anexo ao importar a remessa no sistema do banco. MANUAL COBRANÇA INTEGRADA.pdf
  9. Boa tarde. Em anexo os arquivos alterados com a implementação do registro K010. ACBrSPEDFiscal.rar
  10. O logotipo oficial do banco Sicoob (756) não possui sombras no símbolo. Abaixo as imagens colorida e preto e branco que gerei para uso próprio.
  11. O banco 085 deixou de ser Cecred e passou a ser Ailos. Conforme outro tópico, parece que nada mudou nos formatos de arquivos, exceto o logo. Então, criei um logo colorido e um preto e branco, baseado num modelo enviado pelo banco. Estão em anexo.
  12. Tenho o layout da etiqueta PPLA pronto num arquivo texto e gostaria de apenas preencher os campos (tags) com os dados necessários e enviar para a impressora usando o TACBrETQ. Não encontrei nenhum método que possa ser passado uma string ou arquivo pronto a ser enviado para a impressora. Apenas os métodos específicos para imprimir texto, códigos de barras, linhas etc.
  13. O manual citado no post abaixo acho que é o de pagamentos e não o de cobranças. A alteração que envia o código do convênio nas posições 33 a 52, talvez tenha sido feita equivocadamente usando o manual de pagamentos. Também passei a ter problemas, com homologações rejeitadas, e agora não preencho mais a propriedade convênio quando for Sicoob.
  14. Quando uso o FastReport para imprimir boletos e mudo a propriedade ModoThread do TACBrBoletoFCFR para True, o logotipo do banco não é carregado usando o evento OnObterLogo. Estou usando o evento OnObterLogo para usar imagens JPG que já tinha no meu app. Descobri que o evento OnProgressStart do TfrxReport não é disparado no ModoThread. Alterei para o evento OnBeforePrint, pois ele dispara mesmo no ModoThread. Também adicionei a linha "frxReport.EngineOptions.NewSilentMode := simReThrow" no ModoThread para levantar as exceções e facilitar a identificação dos bugs em produção. Em anexo os arquivos alterados. ACBrBoletoFCFR.dfm ACBrBoletoFCFR.pas
×
×
  • 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.