Harbour Boleto

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

esbaptista
Usuário Nível 1
Usuário Nível 1
Mensagens: 20
Registrado em: 06 Fev 2007 10:37

Harbour Boleto

Mensagem por esbaptista »

consegui compilar no linux, mas da um na hora que vai trocar alguns caracteres pelo gif do codigo de barra.

alguem passou por isso?
esbaptista
Usuário Nível 1
Usuário Nível 1
Mensagens: 20
Registrado em: 06 Fev 2007 10:37

Harbour Boleto

Mensagem por esbaptista »

so para deixar registrado, eu percebi que se vc tentar usar um NOSSO NUMERO maior que o banco indica o boleto sai errado, a rotina nao critica os tamanhos banco a banco.

agora esta funcionando.

alguem pensou em gerar pdf ao inves de html?
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

sygecom escreveu:Claro,
É tão simples que gerei um EXE que pode ser chamado até do Clipper com o codigo em anexo.
Ola..
Desculpe mas como faço para compilar esse aplicativo BOLETO.PRG, ja que faz referencia ha um objeto oboleto()que nao sei onde de encontra..?
Pra mim tudo bem se tiver que chamar uma aplicativo externo mandando parametros.
preciso imprimir o Boleto do Banco do Brasil em PDF...

Obrigado
chrissoares
Usuário Nível 1
Usuário Nível 1
Mensagens: 45
Registrado em: 23 Dez 2009 14:35
Localização: Belo Horizonte/MG
Contato:

Harbour Boleto

Mensagem por chrissoares »

Paulo,

Este objeto oBoleto() você vai encontrar incluindo em seus PRGs o projeto Harbourboleto, que são um conjunto de classes para você conseguir gerar boletos, arquivos de remessa e ler arquivos de retorno de vários bancos.

Atualmente ele não gera o boleto automaticamente em PDF, ele vai criar um arquivo HTML do boleto e você pode imprimir ou gerar um arquivo em PDF com uso de um programa como o PDFCreator. Existe alguns usuários, isolados, que estão tentando utilizar o Harbourboleto para gerar um PDF diretamente como você deseja, já vi alguns assuntos deste tipo aqui no fórum, mas não sei de nenhum que tenha conseguido.

Baixe o Harbourboleto e utilize suas classes para gerar seus boletos. Quanto as duvidas que você tiver, utilize o fórum para conseguir ajuda.

Abraço e sucesso com seus boletos.
Christiano R. Soares
Analista Desenvolvedor
www.bhdados.com.br

'Tudo o que fizerem, façam de todo o coração, como para o Senhor, e não para os homens, sabendo que receberão do Senhor a recompensa da herança. É a Cristo, o Senhor, que vocês estão servindo. '
Colossenses 3:23-24
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

Obrigado.. vou fazer os testes..
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

Ola..
Desculpem sou novato,, perdi horas e nao consigo entender,,tem varios prg, ch etc..imagens, etc
onde colocar tudo isso ?
Eu uso harbour 2.1 hbmk2
Baixe o Harbourboleto e utilize suas classes para gerar seus boletos.
Como faço isso ? Utilizar as classes !
So quero imprimir um boleto do banco do brasil..

Deveria ter uma lib, ai bastava fazer referencias ao objeto boleto..
Ou um executavel externo que eu chame passando paramentros,
ou ainda um program residente..que le um txt ou algo assim..
Alguma solucao ?
chrissoares
Usuário Nível 1
Usuário Nível 1
Mensagens: 45
Registrado em: 23 Dez 2009 14:35
Localização: Belo Horizonte/MG
Contato:

Harbour Boleto

Mensagem por chrissoares »

Ola Paulo!
Paulo Pereira escreveu:Desculpem sou novato,, perdi horas e nao consigo entender,,tem varios prg, ch etc..imagens, etc
onde colocar tudo isso ?
Eu uso harbour 2.1 hbmk2
É eu também estou a pouco tempo trabalhando com o xHarbour/harbour e menos ainda com o HarbourBoleto. Na verdade são os PRGs que fazem parte do HarbourBoleto, você deve colocar eles junto aos seus PRGs ou referenciar a eles na sua compilação, de forma que eles passem a fazer parte do seu sistema.
Paulo Pereira escreveu:Como faço isso ? Utilizar as classes !
Se você já baixou o pacote do HarbourBoleto no Source Forge você deve localizar os arquivos oBoleto.prg, oRemessa.prg, oRetorno.prg, xhbrun.prg e MyFun.c e incluí-los na sua compilação.
As classes são os PRgs que, neste caso, começam com a letra "o" (oBoleto, oRemessa e oRetorno). Para utilizar uma dessas classes é semelhante a receber o retorno de uma função em uma variável:

Código: Selecionar todos

Procedure main()
  Local oBol,;
          cCodBanco:= "001" //Banco do Brasil

  oBol = oBoleto(cCodBanco) //Usa a Classe Criando o Objeto oBol.
  oBol:lAnsi := .t. //Usando uma propriedade (lAnsi) do Objeto oBol, você pode ver no arquivo oBoleto todas as propriedades existentes.
  oBol:lBoleto   := .t. // Se nao quiser gerar Boleto Bancario.
  oBol:nBolsPag  := 1
                                
  oBol:Modelo      := "" // Modelo SIGCB, Padrao da Caixa BOL_SIGCB104.htm, ( oBol:Modelo:="" -> Padrao bol.htm )
  oBol:Cedente     := "Sua Empresa" //Nome do Cedente
  oBol:CedenteCNPJ := "99999999999999" 
  oBol:cCDPF       := "123456"    // Cod. Cedente / Cod. Empresa no Banco
  oBol:cNumCC      := "999999"    // Numero da Conta
  oBol:cDvCC       := "9"         // DV Conta 
  oBol:cNumAgencia := "0000"      // Agencia
  oBol:cDVAgencia  := "5"         // Digito Agencia
  oBol:cCarteira   := "1"         // Carteira de Cobranca
  oBol:EspecieTit  := "DM"

  oBol:Open( "boleto", , , , , .F. ) // .F. Padrao CNAB240, .T. Padrao CNAB400

  oBol:SACADO       := "NOME"
  oBol:ENDERECO     := "ENDERECO"
  oBol:BAIRRO       := "BAIRRO"
  oBol:CIDADE       := "CIDADE"
  oBol:ESTADO       := "SP"                           
  oBol:CEP          := "99999999"
  oBol:CNPJ         := "99999999999"    // cnpj sem ".-/"
  oBol:INSTRUCOES   := "." + CRLF + "Txt Livre 1" + CRLF + "Txt Livre 2" // aqui voce pode por o que quiser ate CRLF
  oBol:nMulta       := 1.50   // Multa Apos Vencimento
  oBol:nMora        := 0.40   // Mora Diaria a Ser Cobrado Por Dia de Atraso
  oBol:nDiasProt    := 5      // Dias Para Protesto
  oBol:DtEmis       := CTOD("20/10/2009") // Data Proc/Emissao
  oBol:DtVenc       := CTOD("30/10/2009") // Vencimento
  oBol:cNumDoc      := "12345678900"      // Seu Numero do Documento
  oBol:cNossoNumero := "000000000000019"  // Tam(15)
  oBol:nValor       := 12.34              // Valor do Boleto
  oBol:Aceite       := "S"          
  oBol:Execute()    // monta html
 
  //Este exemplo foi retirado e adaptado do demoboleto.prg, disponível junto com o HarbourBoleto
 
Teste este código, leia também o demoboleto.prg, de onde tirei este código, você vai ir encontrando o caminho.
Paulo Pereira escreveu:Deveria ter uma lib, ai bastava fazer referencias ao objeto boleto..
Ou um executavel externo que eu chame passando paramentros,
ou ainda um program residente..que le um txt ou algo assim..
Alguma solucao ?
O HarbourBoleto pode trabalhar com arquivos .INI onde você define os dados do cedente e as boletas que você deseja que ele gere, olhe o arquivo bol.ini, feito isto basta chamar o hboleto.exe que ele vai ler este arquivo ini e gerar os boletos como configurado. Para conseguir gerar este arquivo .ini a partir da sua aplicação, você deve incorporar o programa inifiles.prg e dar uma lida para aprender a criar o arquivo INI de forma que o hboleto.exe possa ler e gerar os boletos.

Espero que você consiga dar alguns passos a mais, por enquanto não tem a solução prontoa para gerar um PDF.
Abraços e sucesso!
Christiano R. Soares
Analista Desenvolvedor
www.bhdados.com.br

'Tudo o que fizerem, façam de todo o coração, como para o Senhor, e não para os homens, sabendo que receberão do Senhor a recompensa da herança. É a Cristo, o Senhor, que vocês estão servindo. '
Colossenses 3:23-24
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

Usando o Hboleto e modificando o bol.ini. estou com problema no campo nosso numero.
O banco do Brasil me deu uma faixa de numeros. com tamanho 17
se eu coloco esse numero 14939010076000001 sai assim: 000000***********
esbaptista
Usuário Nível 1
Usuário Nível 1
Mensagens: 20
Registrado em: 06 Fev 2007 10:37

Harbour Boleto

Mensagem por esbaptista »

Paulo Pereira escreveu:Usando o Hboleto e modificando o bol.ini. estou com problema no campo nosso numero.
O banco do Brasil me deu uma faixa de numeros. com tamanho 17
se eu coloco esse numero 14939010076000001 sai assim: 000000***********
isso aconteceu comigo, o problema era o tamanho do NOSSO NUMERO que eu tinha indicado.

sera que o banco mandou o tamanho correto?
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

fiz testes e no hboleto só aceita até 11 numeros..
ai sai assim 00000012345678901 * que tb é tamanho 17

Mas o padrao do banco é convenio com 7 digitos + 4 (CEB) + 6 sequencia = 7+4+6 = 17
será que tem algum tipo de configuracao faltando ?
chrissoares
Usuário Nível 1
Usuário Nível 1
Mensagens: 45
Registrado em: 23 Dez 2009 14:35
Localização: Belo Horizonte/MG
Contato:

Harbour Boleto

Mensagem por chrissoares »

Como vai Paulo ?
Vi que se aventurou um pouco mais!
Paulo Pereira escreveu:Usando o Hboleto e modificando o bol.ini. estou com problema no campo nosso numero.
O banco do Brasil me deu uma faixa de numeros. com tamanho 17
se eu coloco esse numero 14939010076000001 sai assim: 000000***********
Bem, no HarbourBoleto você tem a propriedade cCDPF da classe oBoleto, não foi utilizada no exemplo do INI, nela você vai informar o seu Convênio, no caso do exemplo que você passou seria 149390. A numeração sequencial do seu boleto é que você vai informar no campo Nosso Número. Caso você tenha que informar este CEB, você terá que concatenar ele a sua numeração.
Utilizando o os dados do seu exemplo, ficaria assim:

Código: Selecionar todos

local cCeb:= "1007",;
      nNossoNum:= 0
//Na parte de definição do Cedente
//... outros dados do Cedente
oBol:cCDPF = "149390"
//Na parte dos boletos dentro do laço (While/For)
//...outros dados do boleto
nNossoNum++
oBol:cNossoNumero = cCeb+StrZero(nNossoNum,11-len(cCeb))
Na compilação do hboleto.exe não foi utilizado o campo cCDPF, mas nada impede de você alterar este programa para que lhe sirva melhor.

Se ainda não conseguir, passe mais informações, descreva de forma mais detalhada como esta tentando fazer e nos passe todos os valores que esta utilizando.

Abraços e sucesso com a impressão de boleto.
Christiano R. Soares
Analista Desenvolvedor
www.bhdados.com.br

'Tudo o que fizerem, façam de todo o coração, como para o Senhor, e não para os homens, sabendo que receberão do Senhor a recompensa da herança. É a Cristo, o Senhor, que vocês estão servindo. '
Colossenses 3:23-24
Paulo Pereira
Usuário Nível 2
Usuário Nível 2
Mensagens: 79
Registrado em: 28 Abr 2011 00:29
Localização: Joinville / SC

Harbour Boleto

Mensagem por Paulo Pereira »

Agradeço ao amigo,
Estou tao perto...
Como compilar o hboleto ? como seria o script em .HBP ? (Harbour)
pelo que vi tem que ser em Xharbour..? com BCC ?
Nao tem como incorporar a classe oBoleto() no meu aplicativo ?
Avatar do usuário
cruz_brasil
Usuário Nível 2
Usuário Nível 2
Mensagens: 59
Registrado em: 12 Mar 2010 17:17
Localização: Coimbra - Portugal

Harbour Boleto

Mensagem por cruz_brasil »

Salve Gente,

Eu fiz várias implementações e adcionei mais alguns bancos ao harbour boleto, porem quando terminei o boleto para o banco BANESTES, e mandei para homologação, eles me reclamaram que o tamanho do codigo de barras deveria ser 113mm por 13mm, e que eles não conseguiram ler o codigo de barras...

então eu ajustes alguns espaçamentos entre as imagens para chegar nos 13cm requerido e fui ao um caixa eletronica para testar, mas o caixa não consegue ler o codigo de barras...

Alguem aqui tem usado o Harbour Boleto ? poderiam me dar uma uma luz de como ajustar o tamanho do codigo de barras sem inviabilizar com a leitura do mesmo ?
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour Boleto

Mensagem por asimoes »

Descompacta na pasta dos gifs que montam o código de barras.

http://www.4shared.com/archive/vSL5ToPv/boleto.html
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
cruz_brasil
Usuário Nível 2
Usuário Nível 2
Mensagens: 59
Registrado em: 12 Mar 2010 17:17
Localização: Coimbra - Portugal

Harbour Boleto

Mensagem por cruz_brasil »

Olá asimoes

Muito obrigado.

Maurício Cruz.
Responder