Ir para conteúdo
  • Cadastre-se

Jéter Rabelo Ferreira

Membros
  • Total de ítens

    545
  • Registro em

  • Última visita

  • Days Won

    5

Tudo que Jéter Rabelo Ferreira postou

  1. DOCFABIO, bom dia Na pasta do ACBr tem uma chamada Exemplo\ACBrNFe2\Delphi Verifique o botão Cancelamento por Evento e veja como foi feito. Atenciosamente. Jéter Rabelo Ferreira
  2. Bom dia Juliana. Quanto ao fato de fazermos um componente que contempla todas as possibildiades de carteiras em todos os bancos e o mesmo tratar disso, acho quase que impossível pela quantidade de ajuda que temos hoje. Eu trabalhei mais de 15 anos em banco, e pode acreditar, essa coisa de emissão de boleto é uma pornografia. Cada banco implementa da forma que quer, coloca os campos onde quer e etc. Como você sabe, o padrão CNAB é só o básico do básico. Por isso, quando um analista/desenvolvedor for desenvolver a rotina de emissão de boletos em seu sistema, deverá conhecer o mínimo para isso, como é hoje para gerar um NF-e/SPED/Sintegra e etc. Dito isso, acho que podemos retirar a instrução abaixo sem problemas: if not Length(NossoNumero) in [10, 15] then raise Exception.Create('Tamanho do Nosso número inválido!'); Mas, se mantivermos a instrução abaixo, o usuário será avisado caso o Nosso Número não corresponder com o manual. case Length(NossoNumero) of 10: begin if (Carteira = 'SR') and (Copy(NossoNumero, 1, 1) <> '8') then raise Exception.Create('Nosso número deve começar com 8'); if (Carteira <> 'SR') and (Copy(NossoNumero, 1, 1) <> '9') then raise Exception.Create('Nosso número deve começar com 9'); ANossoNumero := NossoNumero; end; else begin if Carteira <> 'SR' then raise Exception.Create('Carteira inválida para o tamanho do Nosso número'); if Copy(NossoNumero, 1, 2) <> '82' then raise Exception.Create('Nosso número deve começar com 82'); ANossoNumero := NossoNumero; end; end; Dessa forma, os sistemas que emitem boletos de acordo com o manual, funcionará corretamente. Aguardo retorno. Atenciosamente. Jéter Rabelo Ferreira
  3. Olá. Quando você vai dar um Delete num TList, deve-se fazer uma contagem regressiva: for I := Count -1 downto 0 do Delete(I); Atenciosamente. Jéter Rabelo Ferreira
  4. Olá. Complementando: No exemplo do ACBr NF-e está tudo explicado como fazer. Atenciosamente. Jéter Rabelo Ferreira
  5. Olá. Verifique esse post e veja se resolve seu problema: Atenciosamente. Jéter Rabelo Ferreira
  6. Olá. O status é retornado pelo WebService, portanto o tratamento dos mesmos deve ser implementado no seu aplicativo. Atenciosamente. Jéter Rabelo Ferreira
  7. Boa tarde Juliana. Depois que eu anexei as alterações no POST anterior, eu fui atrás de um problema na impressão do boleto no fortes que me incomodava há tempos: "MemoryLeak". O problema ocorre na StringList: MensagemPadrao: TStringList; Ela é criada porém não estava sendo destruída, pois o free foi colocado no FormDestroy e o mesmo não foi setado no evento OnDestroy do form. Eu modifiquei o form implementando os Métodos Constructor e Destructor do mesmo para evitar esse tipo de problema no futuro. Seguem anexos os arquivos agora livre do MemoryLeak e corrigindo os demais problemas relatados nos posts anteriores. Qualquer dúvida, estou a disposição.. Atenciosamente. Jéter Rabelo Ferreira
  8. "Não entendi muito bem oque você quis dizer com exceções..." Exemplificado acima. Atenciosamente. Jéter Rabelo Ferreira
  9. Boa tarde. Fui verificar o update, e verifiquei que houve uma alteracão no arquivo PAS - RLLABEL170 (X) - excluída devido ao envio do arquivo trocado. Pode ser verificado no log do SVN. Segue o correto agora. Atenciosamente. Jéter Rabelo Ferreira
  10. Juliana, boa tarde. Acho que houve um "pequeno grande" problema. Eu não esqueci de anexar o arquivo do boleto correto e você enviou o arquivo do meu Post anterior ao SVN, o que não está correto. Segue anexo o arquiuvo DFM correto e corrigido. Desculpa pelo "transtorno". PS: O Fórum não está adicionando arquivo com extensão ".dfm" Atenciosamente. Jéter Rabelo Ferreira
  11. Boa tarde Juliana. Eu efetuei a alteração com exception na unit. Dessa forma, creio eu que contempla as três situações. Eu possuo conta na CEF e envio boletos na carteira "SR" "NNNNNNNNNN-D". Com essa alteração os boletos gerados estão corretos. Segue anexa a unit. Aguardo retorno. Atenciosamente. Jéter Rabelo Ferreira
  12. Boa tarde. Zerados Onde? -XML -Danfe - Qual deles? - Fortes - Rave - etc? Atenciosamente. Jéter Rabelo Ferreira
  13. Boa tarde Juliana. Nesses casos, ao se acrescentar dígitos ao nosso número, quando o boleto for liquidado e for feita a leitura do arquivo retorno, o campo nosso número ficará diferentes ao informado na hora da geração do boleto, gerando problemas de localização dos boletos pelo referido campo. Para que possamos ter a compatibildiade com o manual da CEF e evitar a mudança do campo nosso número, não seria melhor colocar-mos um exception, que verificaria se o campo nosso número obedece a regra da caixa? Caso queira, eu posso implementar essas exception's. No aguardo. Atenciosamente. Jéter Rabelo Ferreira
  14. Boa tarde. Existe um "pequeno problema" na geração do arquivo de remessa (cnab400) em alguns casos. Ex.: Banco Itaú em algumas carteiras (linha 649 ACBrBancoItau). Nesses casos, o banco exige o preenchimento de uma segunda linha no registro e tem um terceira (opcional). Feito isso, o componente, ao gerar o Trailler, ignora esses registros "adicionais", interpretando-os como apenas 1. Eu fiz uma pequena alteração na unit ACBrBoleto que trata disso. Se o sistema não achar o caracter #13#10 (crlf) na linha, adiciona-a normalmente, caso a encontre, a string é "cortada" no CRLF e adicionada duas linhas (SLRemessa.Add) Eu não tratei quando contiver 3 CRLF, pois utilizo apenas 2. Como disse acima, o Itaú prevê que podem ter até 3 linhas, porém a terceira é opcional. Caso achem interessante, favor adicionarem ao SVN. Caso contrário, vou ter que ter sempre a "minha versão da unit ACBrBoleto. Atencisoamente. Jéter Rabelo Ferreira
  15. Boa tarde. Acabei de fazer um teste em meu sistema e está gerando com 400. Verifique se não tem algum campo que você está passando quantidade de caracteres inferior a exigida. Atenciosamente. Jéter Rabelo Ferreira
  16. Boa tarde, No ano passado (07/2011) eu disponibilizei a unit da CEF (SICOB) para que a mesma fosse incluída no componente para a emissão de boletos desse tipo de carteira da CEF. Tempos atrás, verifiquei que haviam feito algumas modificações nessa unit e a mesma começou a apresentar problemas quanto a impressão de boletos quando se utiliza Nosso Número com 11 dígitos (inclusive é o meu caso). Nesses casos, a linha digitável fica TOTALMENTE incorreta. Outra coisa, relatei noutro post anterior a respeito de se utilizar constantes para o preenchimento do campo nosso número. Isso não pode ocorrer, pois esse referido campo deve ser enviado ao componente da forma que o banco informa a maneira que o mesmo deve ser preenchido, e não como " achamos" que deve ser. Dito isso, eu anexo a referida unit para que vocês possam analisar. Eu fiz alterações para que a mesma trate o referido campo com mais de 11 dígitos ou menos. Com mais de 11 dígitos, eu deixei da forma em que se encontra, efetuei a mudança tratando apenas quando o nosso número for menor que 11, pois era nesses casos que ocorriam os problemas de impressão do boleto. Qualquer dúvida, estou a disposição. Atenciosamente. Jéter Rabelo Ferreira
  17. Boa tarde. Existe um problema com a impressão de boletos utilizando o FORTES em alguns clientes meus e inclusive no meu Notebook. O boleto fica com tamanho desproporcional e, ao imprimir o mesmo, os dados não são impressos corretamente.( Relatei isso no post O Form "ACBrBoletoFCFortesFr.dfm" deve ser ter algumas de suas property's modificadas em seus valores atuais para que esse erro não ocorra com mais ninguém. Essas modificações não afeta NADA na impressão do boleto, pois as property's são do FORM. Segue anexa o arquivo DFM modificado para vocês analisarem e, se possível, enviarem o mesmo para o repositório. Atenciosamente. Jéter Rabelo Ferreira
  18. Boa tarde. Existem algumas versões "não oficiais" do Fortes, que existem bugs e dão alguns probelmas. Para você não ter problema com o ACBr, utilize o Fortes que encontra-se disponível no SourceForge: SVN: https://fortesreport.svn.sourceforge.net/svnroot/fortesreport/trunk Versão atual: 3.71b Atenciosamente. Jéter Rabelo Ferreira
  19. Olá Tópico esclarecido na post: viewtopic.php?f=11&t=8050 Atenciosamente. Jéter Rabelo Ferreira
  20. Olá. Leia esse tópico: Atenciosamente. Jéter Rabelo Ferreira
  21. Boa noite. Eu estou implemetando os eventos em meu módulo de NF-e e me deparei com uma Exception ao imprimir uma Carta de Correção. O problema ocorre na linha 544 na unit ACBrDANFECBRave quando a property MostrarStatus esteja como False, o que é padrão em meus sistemas. Código errado: EventoRave.SystemSetups:=DANFeRave.SystemSetups - [ssAllowSetup]; Código Correto: EventoRave.SystemSetups:=EventoRave.SystemSetups - [ssAllowSetup]; A unit corrigida segue anexa. Atenciosamente. Jéter Rabelo Ferreira ACBrDANFeCBRave.pas
  22. Bom dia. Qual a mensagem de erro que aparece no LOG? Uma dica, marque na primeira página apenas qual você vai utilizar no seu sistema: - Capicom ou - OpenSSL e tente instalar novamente. Atenciosamente. Jéter Rabelo Ferreira
  23. Olá. Em meus sistemas eu utilizo o Banco/Nosso Nümero. Atenciosamente. Jéter Rabelo Ferreira
  24. Olá. Eu fiz da seguinte forma: Criei uma unit chamanda uFortesReportUtil.pas conforme abaixo: unit uFortesReportUtil; interface uses RLConsts; implementation initialization RLConsts.SetVersion(3,71,'B'); end. Depois é só adicioná-la ao seu form principal da aplicação e pronto. Atenciosamente. Jéter Rabelo Ferreira
  25. Olá Qual é mensagem exata? Atenciosamente. Jéter Rabelo Ferreira
×
×
  • 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...