Harbour Boleto

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

Moderador: Moderadores

Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Harbour Boleto

Mensagem por janio »

Edson,

O que acho mais chato nessa questão dos boletos é que para um mesmo banco temos diversos tipos/modos de boletos, nr de digitos de convenios, nr de digitos do 'nosso numero', etc...

Ja emitia para Bradesco com 'nosso numero' de 11 digitos, e Banco do Brasil com 'nosso numero' de 17 digitos. Ontem consegui fazer os ajustes na classe para emitir para CEF com 'nosso numero' de 15 digitos. Procure saber qntos digitos no 'nosso' numero vc vai usar. Pelo que vi a CEF de 15, 11 e 17 digitos (uma zona).

Porém, o HarbourBoleto so tem um modelo de boleto. Agora estou precisando daqueles boletos tipo carnê, com canhoto à esquerda.

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Harbour Boleto

Mensagem por alaminojunior »

janio escreveu:Edson,

O que acho mais chato nessa questão dos boletos é que para um mesmo banco temos diversos tipos/modos de boletos, nr de digitos de convenios, nr de digitos do 'nosso numero', etc...

Ja emitia para Bradesco com 'nosso numero' de 11 digitos, e Banco do Brasil com 'nosso numero' de 17 digitos. Ontem consegui fazer os ajustes na classe para emitir para CEF com 'nosso numero' de 15 digitos. Procure saber qntos digitos no 'nosso' numero vc vai usar. Pelo que vi a CEF de 15, 11 e 17 digitos (uma zona).

Porém, o HarbourBoleto so tem um modelo de boleto. Agora estou precisando daqueles boletos tipo carnê, com canhoto à esquerda.

Janio
Jânio, no caso aqui são quinze dígitos, fora o DV.

Precisávamos do manual da CEF para emissão destes boletos. Vou ver se consigo algo.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Harbour Boleto

Mensagem por janio »

Pois pronto, Edson!

Eh bem facil resolver o que vc ta querendo. Eh so preencher uma variavel la no harbour boleto que funciona! Eu passei horas ate descobrir isso kkkk!

Jaja posto aqui como fiz q deu certo!

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Harbour Boleto

Mensagem por janio »

O pulo do gato pra mim no boleto da CEF foi preencher a variavel ::cTipoCob! Então preenchi essa variavel com "14" (o 1 significa carteira registrada, e o 4 significa que é o cliente que emite o boleto (se não mim engano).

Então o boleto da CEF funciona igual aos outros bancos: Vc informa o 'nosso numero' com 15 caracteres, sequencial e sem digito verificador!

No arquivo oBoleto.prg, no METHOD Execute( ) CLASS oBoleto, na parte referente a CEF eu deixei conforme abaixo:

Código: Selecionar todos

      CASE ::cCodBco == "104"  // Caixa

            ** Cedente e DV, OK Testado **
            ::cDvCDPF := DC_Mod11(::cCodBco, 9, .F., ::cCDPF )
            ** xx **

            ** NossoNumero e DV, OK Testado **

  	    ::cTipoCob := "14" // (preencher essa variavel)

	    cAux_NN := ::cTipoCob + ::cNossoNumero
            ::cDGNN := DC_Mod11(::cCodBco, 9, .F., cAux_NN )
            cNsNm := ::cTipoCob + '/' + ::cNossoNumero + '-' + ::cDGNN

            ** xx **

            cAgcc := ::cNumAgencia + "/" + ::cCDPF + "-" + ::cDvCDPF

            ** Campo Livre e DV, OK Testado **
            Aux_Livre := ::cCDPF + ::cDvCDPF + ;
                         SubStr( ::cNossoNumero, 1, 3 ) + SubStr( ::cTipoCob, 1, 1 ) + ; // Constante1, cTipoCob (1)Registrada, (2) Sem Registro
                         SubStr( ::cNossoNumero, 4, 3 ) + SubStr( ::cTipoCob, 2, 1 ) + ; // Constante2, cTipoCob (4)Emissao Cedente, (1)Caixa Via Correio, Agencia ou Email ( Forma de Envio )
                         SubStr( ::cNossoNumero, 7, 9 )
            DG_Livre  := DC_Mod11(::cCodBco, 9, .F., Aux_Livre )
            cCpoLivre := Aux_Livre + DG_Livre
            ** xx *            
Abaixo vou anexar um boleto gerado por um proprio sistema da Caixa, e o boleto gerado por mim no HarbourBoleto. Percebam que a linha digitavel (codigo de barras) ficou exatamente igual ao boleto emitido pelo sistema da caixa!
Anexos
IMG_9437.jpg
IMG_9374.jpg
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Responder