Ola, pessoal !
Estou com dificuldade para imprimir boleto bancário no xharbour. Estou estudando o harbourboleto, mas não consigo imprimir, o executável "DEMOBOL.EXE" não faz nada ?.
este open-source só funciona em harbour ?
Gostaria de saber se tem uma rotina para colocar dentro do meu sistema, igual a publicada no forum do "CA-CLIPPER", mas ela somente funciona com impressoras HP-PCL5.
Acho que harbourboleto dá para adaptar, mas quando eu compilo com xDev, ele não acha as funções: HB_DTOC e nem a SHELLEXECUTE.
Desde já agradeço.
Um abraço.
Kadu :'(
Boleto Bancario
Moderador: Moderadores
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Re: Boleto Bancario
Amiguinho,
como paleativo use DTOC() no lugar de HB_DTOC() e RUN no lugar de ShellExecute()
como paleativo use DTOC() no lugar de HB_DTOC() e RUN no lugar de ShellExecute()
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- alaminojunior
- Colaborador

- Mensagens: 1717
- Registrado em: 16 Dez 2005 21:26
- Localização: Ubatuba - SP
Re: Boleto Bancario
Eu estava com o mesmo problema.
Resolví compilando junto o arquivo "Myfunc.c" que vem na versão do sourceforge. Na versão do CVS atualizei várias vezes e não veio o tal arquivo.
Um detalhe, é que uso a versão 1.2.1 do xHarbour.org com Bcc 5.8.2. Para a versão 1.0.0 parece que o buraco é mais embaixo e precisa de uma manobra a mais, segundo o Jânio.
Resolví compilando junto o arquivo "Myfunc.c" que vem na versão do sourceforge. Na versão do CVS atualizei várias vezes e não veio o tal arquivo.
Um detalhe, é que uso a versão 1.2.1 do xHarbour.org com Bcc 5.8.2. Para a versão 1.0.0 parece que o buraco é mais embaixo e precisa de uma manobra a mais, segundo o Jânio.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
MySQL c/ SQLRDD
HwGui + GTWVG
Re: Boleto Bancario
Para xharbour 1.0, o conteúdo do MyFunc.c deve ser o seguinte:
Código: Selecionar todos
//#IFNDEF __PLATFORM__Linux
#include <windows.h>
#include <hbapi.h>
// ShellExecute( cFile, cOperation, cParams, cDir, nFlag )
HB_FUNC( SHELLEXECUTE )
{
// ShowWindow( (HWND) hb_gt_wvwGetWindowHandle( hb_gt_wvw_GetMainCoordMode() ), 0 );
hb_retnl( (LONG) ShellExecute( GetActiveWindow(),
ISNIL(2) ? NULL : (LPCSTR) hb_parc(2),
(LPCSTR) hb_parc(1),
ISNIL(3) ? NULL : (LPCSTR) hb_parc(3),
ISNIL(4) ? "C:\\" : (LPCSTR) hb_parc(4),
ISNIL(5) ? 1 : hb_parni(5) ) ) ;
// ShowWindow( (HWND) hb_gt_wvwGetWindowHandle( hb_gt_wvw_GetMainCoordMode() ), 1 );
}
//#ENDIF
#include <ctype.h>
#include "hbapi.h"
#include "hbapierr.h"
#include "hbapiitm.h"
#include "hbset.h"
#include "hbdate.h"
const char * hb_setGetDateFormat( void )
{
HB_THREAD_STUB
HB_SET_STRUCT *s = hb_GetSetStructPtr( );
return s->HB_SET_DATEFORMAT;
}
HB_FUNC( HB_DTOC )
{
if( ISDATE( 1 ) )
{
char szDate[9];
char szFormatted[ 11 ];
hb_retc( hb_dateFormat( hb_pardsbuff( szDate, 1 ), szFormatted,(ISCHAR(2)?hb_parcx(2):hb_setGetDateFormat() ) ) ); // <- aqui foi a implementação
}
else
{
hb_errRT_BASE_SubstR( EG_ARG, 1118, NULL, "HB_DTOC", 1, hb_paramError( 1 ) );
}
}
//#pragma ENDDUMP
//eof
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Re: Boleto Bancario
tô com um problema em boletos que é o seguinte:
O nosso-numero tem que ter 11 posições na carteira 18. Informo somente as 11 posições, mas sempre o harbourboleto entende como 17 posições.
Eu precisaria que a 'linha digitável' do codigo de barras tivesse a seguinte forma:
O nosso-numero tem que ter 11 posições na carteira 18. Informo somente as 11 posições, mas sempre o harbourboleto entende como 17 posições.
Eu precisaria que a 'linha digitável' do codigo de barras tivesse a seguinte forma:
Código: Selecionar todos
------------------------------------------------------------------------------------------------------------------------------------------
BCO| CÓD MOEDA| NOSSO N° (5) | DV | NOSSO N° (6) | AGÊNCIA | DV | COD.CEDENTE | CARTEIRA | DV | DVCB | FAT.VENCTO \ VALOR
------------------------------------------------------------------------------------------------------------------------------------------
001 9 88962 5 100272 1705 7 00012534 18 6
------------------------------------------------------------------------------------------------------------------------------------------
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
