FreeBoleto
Autor original: Carlos H. Cantu
(última versão: 0.98
- ver últimas alterações
)
Descrição
O FreeBoleto é um componente VCL compatível com o Delphi 7 até 10.2 (Tokyo)
(e talvez com outras versões também), destinado à geração das informações necessárias para emitir boletos bancários em projetos feitos com o Delphi.
No momento, o componente só gera arquivos CNAB de remessa para o Santander, e não processa os arquivos de retorno. Contribua desenvolvendo as rotinas para outros bancos.
Antes de optar pela utilização do FreeBoleto, você deve concordar com os termos da licença
presentes nesse arquivo.
Bancos suportados atualmente:
- Itaú
- NossaCaixa
- Banespa
- Unibanco
- Real
- Bradesco
- Caixa Federal
- Banco do Brasil
- Santander
- Sicredi
Como usar
Baixe
o artigo para saber como instalar e utilizar os componentes.
Instalação
Para instalar, abra o pacote (DPK) correspondente no Delphi, compile e instale. Uma nova aba com o nome de "FreeBoleto" será criada na sua palheta de componentes. Para saber como utilizar os componentes, verifique o projeto DEMO.DPR
que acompanha o pacote.
Criando novos bancos
Se você precisa gerar boletos para um banco que ainda não é suportado pelo FreeBoleto, então você mesmo pode criar a unit de suporte para esse banco. Para isso, peça ao banco em questão o manual para geração de código de barras. Nesse manual você encontrará as informações necessárias para gerar os dados do boleto de acordo com o padrão do banco em questão.
Junto com o pacote do FreeBoleto existe um arquivo chamado uBancoBASE.pas. Esse arquivo serve de base para a criação de novos bancos para o FreeBoleto. Ele está todo comentado com as instruções de como você deverá proceder para incorporar um novo banco ao pacote do FreeBoleto. Não esqueça que você pode consultar as outras units já existentes (para outros bancos) para ter uma idéia de como implementar o código necessário.
Onde baixar
Recomendo sempre usar o código mais recente, baixando diretamente do SVN.
Suporte
Você pode obter suporte voluntário ao FreeBoleto através da lista de discussão localizada em br.groups.yahoo.com/group/freeboleto
. O suporte é voluntário, por isso não reclame
se sua dúvida não foi respondida rapidamente, pois isso vai depender da disponibilidade
de cada um.
Não responderei dúvidas postadas diretamente para mim. Utilizem a lista de discussão para tirar suas dúvidas!
Atuais contribuidores
- Carlos Henrique Cantu (autor original)
- Erick Sasse
Licença
- O FreeBoleto pode ser distribuído e utilizado livremente com qualquer tipo de projeto, comercial ou não.
- Componentes derivados do código do FreeBoleto não podem ser vendidos e devem manter os créditos originais, e devem estar compatíveis com essa licença.
- Qualquer alteração ou melhoria no código do FreeBoleto deve ser enviada ao autor para ser avaliada e, se possível, incorporada ao código oficial do componente.
- A inclusão do suporte de novos bancos ao FreeBoleto deve ser notificada ao autor, enviando juntamente o código da unit do banco em questão. A criação de uma nova unit de suporte a um novo banco deverá ser feita em conjunto com a criação dos testes unitários (DUNITs
) necessários para garantir o correto funcionamento das rotinas.
- O autor não se responsabiliza por qualquer dano ou qualquer outro tipo de problema originado pela utilização desse componente, se isentando de qualquer responsabilidade sobre a utilização do mesmo.
ChangeLog
Versão 0.98: (Abril/2017)
- Adequação do layout do boleto e nomenclaturas, de acordo com os novos padrões da Febraban.
- Melhoria da qualidade de impressão dos boletos.
- Criação da estrutura básica para geração de arquivos de remessa, inclusive com a criação de novas propriedades necessárias para a geração dos arquivos cnab.
- Desenvolvimento das rotinas para geração de arquivos de remessa do Santander (padrão cnab240).
- Atualização da aplicação de DEMO, para gerar arquivos de remessa CNAB.
- Contribua com o projeto, desenvolvendo rotinas para gerar o cnab de outros bancos, e enviando para inclusão no código oficial!
Versão 0.95: (2010)
- Melhoria na geração da imagem do boleto, referente ao logotipo/impressão do nome do banco.
- Inclusão do logotipo do banco 748 no arquivo de resources.
- Atualização do logotipo do banco 033 de Banespa para Santander.
- Alteração enviada por Angelo Bassay para inclusão de novas carteiras no Banco 104 (Caixa)
Versão 0.93:
(03-Dezembro-2009)
- Adaptação da unit do Santander Banespa (033) para trabalhar com contas antigas (codigo cedente de 11 digitos) e contas novas. As rotinas para as novas contas foram desenvolvidas por ncc.star@gmail.com.
Versão 0.92:
(29-Julho-2009)
- Nova unit para o Banco SICREDI (748), desenvolvida por Eduardo Henrique Bertolla.
Versão 0.91:
(10-Outubro-2008)
- Nova propriedade no componente TFreeBoletoImage: DrawLogotipo - quando TRUE, desenha o logotipo do banco no boleto. Baseado no código (e resources) enviados por pgra[arroba]ig.com.br.
Versão 0.90:
(14-Março-2008)
- Padronização da formatação de código das units alteradas pela Cadena.
- Novo zip gerado para a versão 0.90
Versão 0.83:
(11-Março-2008)
- Adicionada impressão com FastReport.
- Adicionada suporte ao boleto do Santander.
- Resolvidos bugs nos boletos do Banco do Brasil e Unibanco.
- Criação classe específica para exceptions.
- Adicionada propriedade mensagem para mensagens adicionais na primeira página do boleto quando o modelo utilizado para impressão tiver espaço. (FastReport por exemplo).
Versão 0.50:
(29-Agosto-2006)
- Adicionado Banco do Brasil. (Cantu)
- Alteração da rotina de impressão, a fim de sanar o problema que as vezes fazia com que página saísse inteiramente preta. (rotina testada por Erick Sasse)
Versão 0.43:
(19-Setembro-2005)
- Adicionado propriedade LocalPagamento no TFreeBoleto (Daycon)
- Modificado o constructor do componente TFreeBoletoImagem adicionado o parâmetro para indicar se a "lista de boletos" deve se tornar "dona" dos boletos adicionados, e portanto destruí-los automaticamente quando a mesma for limpa. O padrão é TRUE, ou seja, os boletos serão destruídos. (Cantu)
- Correção de bug na sincronização do TrackBar de navegação no preview de boletos. (Cantu)
- Adicionado as propriedades DestruirBoletos e TrackBarDelay no componente TFreeBoletoImagem. (Cantu)
- Padronização: Alteração do nome do método Limpa para Limpar e LimpaTudo para LimparTudo.
Versão 0.3:
(13-Setembro-2005)
- Criação da classe TFreeBoletoList, utilizada para gerenciar uma lista de boletos. (Erick Sasse)
- Melhoria geral no preview e impressão de boletos. Agora é possível inserir vários boletos para serem vistos na tela, através da propriedade ListaBoletos, que substituiu a antiga propriedade Boleto do componente TFreeBoletoImagem. (Cantu)
- Troca do BitMap utilizado para o boleto por um mais "light" modificado por Daycon Rodrigues. (Cantu)
- Adaptação da aplicação de demonstração do FreeBoleto para suportar os novos recursos. (Cantu)
- Melhoria da barra de ações na tela de preview, com opção de navegação, impressão e track para se movimentar pelos boletos mais facilmente. (Cantu)
- Criado ícones para os componentes na palheta do Delphi. (Cantu)
Versão 0.2:
(10-Setembro-2005)
- Inclusão da propriedade Instrucoes
no TFreeBoleto, permitindo imprimir instruções no boleto. (Erick Sasse)
- Inclusão de novos bancos. (Cantu)
- Inclusão de uma barra de ações na tela de preview do boleto. (Erick Sasse)
- Correção de alguns bugs. (Cantu)
- Criação do projeto para Delphi 2005 (Win32). (Erick Sasse)
Versão 0.1: Versão inicial (Cantu)