Página 2 de 6

Harbour Boleto

Enviado: 30 Mai 2011 18:27
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?

Harbour Boleto

Enviado: 30 Mai 2011 19:58
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?

Harbour Boleto

Enviado: 16 Jun 2011 00:41
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

Harbour Boleto

Enviado: 16 Jun 2011 10:41
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.

Harbour Boleto

Enviado: 16 Jun 2011 11:06
por Paulo Pereira
Obrigado.. vou fazer os testes..

Harbour Boleto

Enviado: 20 Jun 2011 22:52
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 ?

Harbour Boleto

Enviado: 21 Jun 2011 11:32
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!

Harbour Boleto

Enviado: 21 Jun 2011 18:56
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***********

Harbour Boleto

Enviado: 21 Jun 2011 19:31
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?

Harbour Boleto

Enviado: 21 Jun 2011 20:45
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 ?

Harbour Boleto

Enviado: 22 Jun 2011 12:22
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.

Harbour Boleto

Enviado: 23 Jun 2011 16:17
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 ?

Harbour Boleto

Enviado: 28 Mai 2012 10:40
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 ?

Harbour Boleto

Enviado: 29 Mai 2012 17:24
por asimoes
Descompacta na pasta dos gifs que montam o código de barras.

http://www.4shared.com/archive/vSL5ToPv/boleto.html

Harbour Boleto

Enviado: 30 Mai 2012 17:02
por cruz_brasil
Olá asimoes

Muito obrigado.

Maurício Cruz.