jaguiar
-
Posts
27 -
Joined
-
Last visited
Posts posted by jaguiar
-
-
Olá galera.
Achei muito interessante essa classe, mas cofesso a vocês que sou zera à esquerda em RicEdit. Tudo que preciso saber é a sintaxe do richedit em relação à TPrint. Por exemplo, o que devo mudar no fonte abaixo para enviar para richEdit?
PRIVATE oPrn,oFont,nTam, nLen, nTamPag, nTamRel,aCOL,nPROW
PRINT oPrn NAME "Impressao de Pedido de Venda Nº "+STR(ARQCAD->PEDORC,6) PREVIEW MODAL FROM USER
oPrn:SetPage(9) // 1=Carta 9=A4
DEFINE FONT oFONTCB1 NAME "ARIAL" SIZE 30,26 BOLD OF OPRN
DEFINE FONT oFONTDET NAME "ARIAL" SIZE 27,10 BOLD OF OPRN
DEFINE FONT oFont NAME "ARIAL" SIZE 27,10 OF oPrn
DEFINE PEN oPen WIDTH 2 OF oPrn
nCOLE := 6
nPAG := 0
DbSelectArea("TMPDETAL")
DbGoTop()
DO WHILE !EOF()
ResLinha := oPrn:nLogPixely()/2.54
ResColuna := oPrn:nLogPixelx()/2.54
PAGE
nPROW := 0 // En
++ nPAG
MBox(0.90,0.90,26.0,20)
oPrn:SayBitMap( 1.00 * ResLinha, 1.00 * ResColuna,;
"&cDRIVE\SISCOM\BITMAPS\LogoGradial.bmp",;
08.40 * ResLinha, 7.10 * ResColuna ) // 8.40 3.10
MBox(4.60,0.90,4.61,20) // linha hoprizontal
oPrn:SetFont(oFontCb1)
oPrn:CharSay(PROWW(06.1),nCOLE, "PEDIDO DE VENDA No. "+ STR(ARQCAD->PEDORC,6) )
oPrn:CharSay(PROWW(),nTamRel," ","D")
//
oPrn:SetFont(oFONTDET)
oPrn:CharSay(PROWW(11),nCOLE,"EMISSÃO:")
oPrn:CharSay(PROWW( ),17,NOVADATA(DATE()) )
//oPrn:CharSay(PROWW( ),65,"Vendedor: " +STRZERO(ARQCAD->PEDVND,3) + " "+;
// TRIM(ARQFUNC->NOME))
oPrn:CharSay(PROWW(),nTamRel," ","D")
oPrn:CharSay(PROWW(1),nCOLE, "CLIENTE:")
oPrn:CharSay(PROWW( ),17, TRIM(cNOMCLI)+" "+STR(ARQCAD->PEDCLI,6) )
oPrn:CharSay(PROWW(),nTamRel," ","D")
...
ENDPAGE
ENDDO
ENDPRINT
id=code>id=code> -
Olá Luisão.
Fucionou perfeitamente. Muito obrigado carÃssimo.
Fleliz ano novo pra vc e para todos o companheiros do forum.
Fui...
-
Olá Ico.
É Mais ou menos isso: No exemplo abaixo, quando clico em moda cor o sistema me mostra o objeto de seleção de cores. Notes que nesse objeto, na parte inferior direita tem as cores: red, green e blue representada por números. É extamente esse três números que preciso capcurar para minhas variáveis de cores e definir as cores mais ou menos assim:
#Define CLR_FUNGET nRGB( nCOREDIT1,nCOREDIT2,nCOREDIT3)
#Define CLR_FONGET nRGB( nCOREDIT4,nCOREDIT5,nCOREDIT6)
LOCAL oDLG
nGET := 0
DEFINE DIALOG oDlg FROM 02,01 TO 15,45 TITLE 'Seleção de cores'
@ 02.5,01 SAY "Cor Gets"
@ 02.7,04 GET oGET VAR nGET PICT "9999999999"
//
@ 0012,05 Button oBtnCancel Prompt "&Muda Cor Get";
Size 40,15 Pixel Action oGET:SelColor() Of oDlg
@ oDlg:nHeight()/2-19,oDlg:nWidth()/2-35 Button oBtnCancel Prompt "&Cancelar";
Size 30,15 Pixel Action oDlg:End() Of oDlg
ACTIVATE DIALOG oDlg CENTERED
-
Olá Lailton.
Segue o código amigo...
STATIC FUNCTION Imprime(cWILCOND)
LOCAL oCBX, oBoleto
LOCAL nJURODIA := ARQPARAM->JURODIA
LOCAL nVALDESC,nVALTIT,nVALMULT
LOCAL cINST01,cINST02,cINST03,cINST04,cINST05
PRIVATE cARQCONF,cARQLOGO,cAGENCIA,cCONTA
// Necessrio efetuar download da lib TOleAuto em ftp://ftp.harbour-project.org/contrib/hbole.zip
//
// Exemplo dado pelo evandro@skillnet.com.br
//
dllatual:= loadlibrary("Cobrebemx.dll")
SET RESOURCES TO dllatual
//
// SET RESOURCES TO "H:\SISCOM\cobrebem\Cobrebemx.dll" // "C:\cobrebemx\Cobrebemx.dll" // dllatual
// SET RESOURCES TO "Cobrebemx.dll"
//
oCBX := TOleAuto():New("CobreBemX.ContaCorrente")
// Monta arquivo de licena de teste para banco 001 carteira 18
cARQCONF := ARQPARBL->ARQCONF
oCBX:ArquivoLicenca := "&cDRIVE\SISCOM\CobreBem\&cARQCONF" // TL356_42.conf"
// oCBX:ArquivoLicenca := "H:\SISCOM\CobreBem\TL356_42.conf"
// Monta dados da conta corrente
cAGENCIA := STRZERO(ARQPARBL->AGENCIA,4)
IF !EMPTY(ARQPARBL->DIGAGENC)
cAGENCIA += "-"+ARQPARBL->DIGAGENC
ENDIF
oCBX:CodigoAgencia := cAGENCIA // STRZERO(ARQPARBL->AGENCIA,4) // "0200"
cAGENCIA := STRZERO(ARQPARBL->AGENCIA,4) + ;
IF( !EMPTY(ARQPARBL->DIGAGENC),"-"+ARQPARBL->DIGAGENC," ")
cCONTA := TRIM(ARQPARBL->CONTA)+;
IF(!EMPTY(ARQPARBL->DIGCONTA),"-"+ARQPARBL->DIGCONTA," " )
oCBX:NumeroContaCorrente := TRIM(cCONTA)
//oCBX:NumeroContaCorrente := LEFT(ARQPARBL->CONTA,7) rem 03/07/09
oCBX:LocalPagamento := "Pagável em qualquer banco até o vencimento"
//
oCBX:CodigoCedente := LEFT(ARQPARBL->CONTA,7) // "0715383"
IF ARQPARBL->NNUMERNF
// Gera o n. número igual à nota fiscal no Bradesco é assim
oCBX:InicioNossoNumero := "0000001"
oCBX:FimNossoNumero := "0079999"
nNOSSNUM := VAL( STR(TMPCREC->RECSEQ,6)+STR(TMPCREC->RECPARC,1) ) // Adi 22/07/09
oCBX:ProximoNossoNumero := STRZERO(nNOSSNUM-1,5) // adi em 03/07/09
//oCBX:ProximoNossoNumero := STRZERO(TMPCREC->RECSEQ-1,5) rem 22/07/09
ELSE
// oCBX:InicioNossoNumero := "00001" rem 03/07/2009
// oCBX:FimNossoNumero := "79999" rem 03/07/2009
oCBX:InicioNossoNumero := STRZERO(ARQPARBL->NNUMEROI,7) // ad 03/07/2009
oCBX:FimNossoNumero := STRZERO(ARQPARBL->NNUMEROF,7) // ad 03/07/2009
oCBX:ProximoNossoNumero := STRZERO(ARQPARBL->NNUMERO-1,5)
ENDIF
nNOSSNUM := ARQPARBL->NNUMERO
oCBX:PadroesBoleto:PadroesBoletoImpresso:CaminhoImagensCodigoBarras := "&cDRIVE\SISCOM\bitmaps\"
//
DbSelectArea("ARQPARBL")
REGLOCK(0,.F.)
DbSelectArea("TMPCREC")
//
cARQLOGO := LTRIM( STR(nCDBANC) ) + ".jpg"
oCBX:PadroesBoleto:PadroesBoletoImpresso:ArquivoLogotipo := "&cDRIVE\SISCOM\bitmaps\&cARQLOGO"
//oCBX:PadroesBoleto:PadroesBoletoImpresso:ArquivoLogotipo := "&cDRIVE\SISCOM\bitmaps\356.jpg"
// MsgAlert("Erro "+oCBX:PadroesBoleto:UltimaMensagemErro)
/*
Caso queira emitir o boleto no formato Carnet, informe para a propriedade 'LayoutBoleto'
do objeto 'IPadroesBoletoImpresso' o valor 'CarnetReciboLateralEsquerda'
ou 'CarnetReciboLateralDireita'
*/
//
// oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto := "CarnetReciboTopo"
//oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto := "PadraoReciboTopo"
While &cWILCOND // !eof()
IF cWILCOND=="!EOF()" .AND. RECBCO # nCDBANC
DbSkip()
LOOP
ENDIF
nVALDESC:= 0
nVALTIT := TMPCREC->RECVAL - nVALDESC
nVALMULT:= 2.00
IF !EMPTY(ARQPARBL->DIASPROT)
// cINST01 := 'NAO DISPENSA MORA. COBRAR MORA DE '+TRIM(ARQPARAM->PMOEDA)+' '+LTRIM( TRANSF( (TMPCREC->RECVAL-nVALDESC) * nJURODIA/100,'@E 99,999.99') ) +' POR DIA DE ATRASO'
cINST01 := ' '
cINST02 := 'APOS VENCIMENTO COBRAR MULTA DE '+TRIM(ARQPARAM->PMOEDA)+' '+LTRIM( TRANSF( (TMPCREC->RECVAL-nVALDESC) * 0.02,'@E 99,999.99'))
cINST03 := 'PROTESTAR APOS '+LTRIM(ARQPARBL->DIASPROT) + ' DIAS UTEIS DO VENCIMENTO'
ELSE
cINST01 := ' '
cINST02 := ' '
cINST03 := ' '
ENDIF
cINST04 := 'VALORES EXPRESSOS EM REAIS'
cINST05 := 'NF '+STR(TMPCREC->RECSEQ,6)
//
// O bloco do IF abaixo não existe no programa da Distribegi. Verificar se é necessário
//
IF !ARQPARBL->NNUMERNF .AND. !EMPTY(TMPCREC->RECNNUM) // adi 03/07/09
//IF !EMPTY(TMPCREC->RECNNUM) rem 03/07/09
nNOSSNUM := VAL(TMPCREC->RECNNUM) - 1
oCBX:ProximoNossoNumero := STRZERO(nNOSSNUM,5)
++ nNOSSNUM
ENDIF
oBoleto := oCBX:DocumentosCobranca:Add()
syswait(.5) // Tem no programa exemplo do chegado do forum
// Monta dados do sacado
cNOMSAC := TRIM(ARQCLI->CLIRAZAO)
IF !LEFT(ARQCLI->CLIRAZAO,20) == ARQCLI->CLINOME
cNOMSAC += " - "+ARQCLI->CLINOME
ENDIF
oBoleto:NomeSacado := cNOMSAC
oBoleto:EnderecoSacado:= ARQCLI->CLIENDC
oBoleto:BairroSacado := ARQCLI->CLIBAIC
oBoleto:CidadeSacado := ARQCLI->CLICIDC
oBoleto:EstadoSacado := ARQCLI->CLIUFC
oBoleto:CEPSacado := ARQCLI->CLICEPC
// Monta dados do documento de cobranca
oBoleto:PadroesBoleto:InstrucoesCaixa := cINST01 + "
" + cINST02 + "
" + cINST03 + "
" + cINST04 + "
" + cINST05
oBoleto:PadroesBoleto:Demonstrativo := cINST01 + "
" + cINST02 + "
" + cINST03 + "
" + cINST04 + "
" + cINST05
oBoleto:DataDocumento := DTOC(RECDEMI)
oBoleto:DataProcessamento:= DTOC(RECDEMI)
oBoleto:DataVencimento := DTOC(RECDVEN)
oBoleto:NumeroDocumento := STRZERO(RECSEQ,6)+STR(RECPARC,1)
oBoleto:ValorDocumento := nVALTIT
oBoleto:TipoDocumentoCobranca:= "DM"
//
oCBX:calcularDadosBoletos()
linhadigi := oBoleto:LinhaDigitavel // pega linha digitável
codildigi := oBoleto:CodigoBarras // codigo utilizado para gerar o código de barras
//
// nNossoCob := oBoleto:NossoNumero && pega nosso número
//
// Pega o nosso numero igual a nf
IF ARQPARBL->NNUMERNF // Bradesco
//nNOSSNUM := TMPCREC->RECSEQ Rem em 22/07/09
nNOSSNUM := VAL( STR(TMPCREC->RECSEQ,6)+STR(TMPCREC->RECPARC,1) ) // AD em 22/07/09
oCBX:ProximoNossoNumero := STRZERO(nNOSSNUM-1,10) // STRZERO(nNOSSNUM,8) Sem o digito conf contato c/Cobrebem
ELSE // Real
// Pega o nosso numero pelo contador de auto-incremento - Real
IF EMPTY(TMPCREC->RECNNUM)
DbSelectArea("ARQCREC")
GO TMPCREC->NRECNO
REGLOCK(0,.F.)
REPLACE RECNNUM WITH STRZERO(nNOSSNUM,5)
DbUnlock()
REPLACE TMPCREC->RECNNUM WITH STRZERO(nNOSSNUM,5)
//
DbSelectArea("TMPCREC")
++ nNOSSNUM
REPLACE ARQPARBL->NNUMERO WITH nNOSSNUM // ta travado
ELSE
// Retorna o próximo n.número para os parâmetros
nNOSSNUM := ARQPARBL->NNUMERO
oCBX:ProximoNossoNumero := STRZERO(nNOSSNUM-1,5)
ENDIF
ENDIF
syswait(.5)
IF cWILCOND=="!EOF()"
DbSkip()
ELSE
EXIT
ENDIF
SysRefresh() && aqui verifica numero do boleto 17/04/2007 retirar se der algo errado
Enddo
IF !"JOAO" $ cUSUARIO
oCBX:ImprimeBoletosSemPreview()
ELSE
oCBX:ImprimeBoletos()
ENDIF
oCBX:End()
//
DbSelectArea("ARQPARBL")
DbUnlock()
//
DbSelectArea("TMPCREC")
RETURN( NIL )
***********************************************************************************************
-
Olá Luis.
Obrigado amigão.
Leandro, encaminhei pra vc.
Tá na caixa.
-
Olá pessoal.
Tenho o sistema em harbour 7.01 e devido a nfe tive que compilar em xharbour. A partir daà começou a dar um erro a cada boleto impresso.
Sgue o erro
Called from: source\rtl\win32ole.prg => TOLEAUTO:END(0)
Called from: IMPBOLL.prg => IMPRIME(398)
Alguem tem esta hbole.lib?
Grato
joão Freire de Aguair
joaosiscom@hotmail.com
-
Olá pessoal.
Tenho o sistema em harbour 7.01 e devido a nfe tive que compilar em xharbour. A partir daà começou a dar um erro a cada boleto impresso.
Sgue o erro
Called from: source\rtl\win32ole.prg => TOLEAUTO:END(0)
Called from: IMPBOLL.prg => IMPRIME(398)
Alguem tem esta hbole.lib?
Grato
joão Freire de Aguair
joaosiscom@hotmail.com
-
Olá pessoal.
Alguém tem o CNAB-400 do Bradesco?
Se possÃvel envie para mim.
Grato
joão
joaosiscom@hotmail.com
-
Olá pessoal.
Alguém tem o CNAB-400 do Bradesco?
Se possÃvel envie para mim.
Grato
joão
joaosiscom@hotmail.com
-
Olá Yury.
Falei com o pessoal da Cobrebem que me enviaou um código html com o layout do boleto Bradesco que necessito. Porém, torna-se necessário utilizar a opção PadraoReciboPersonalizado e criar as tags html.
Aà é que o bicho pega, pois nunca fiz nada parecido!.
Se alguém tiver um exemplo de como fazer isso, vou ficar eternamente grato.
João Freire de Aguiar
-
Olá pessoal.
Tenho um sistema em Clipper que gera arquivos para palm zire 100 e recebe os arquivos gerados pelo mesmo e agora me deparei com a necessidade de implantar esse sistema em um programa em xHarbour.
Gostaria de saber dos amigos programadores se voces conhecem o Zire e o que acham dele. Caso tenham uma sugestão melhor, mais pratica, será bem vida a dica.
Grato
João Freire de Aguiar
-
Olá pessoal.
Tenho um sistema em Clipper que gera arquivos para palm zire 100 e recebe os arquivos gerados pelo mesmo e agora me deparei com a necessidade de implantar esse sistema em um programa em xHarbour.
Gostaria de saber dos amigos programadores se voces conhecem o Zire e o que acham dele. Caso tenham uma sugestão melhor, mais pratica, será bem vida a dica.
Grato
João Freire de Aguiar
-
Hé, Kapiaba.
Se não fosse o Gilmer, ia mudar meu Slogan de nós atrasa mais não tarda para "NOIS ATRASA MAIS NÃO CHEGA!" ou "Se não tem jeito, então tá resouvido !"
Fui...
-
Desculpe não ter respondigo antes Gilmer, mas no dia em que vc deu a resposta já funcionou.
Para quem ainda não fez para pessoa fÃsica, lembre-se também que o cpf tem só 11 digitos!
Grato Pessoal.
-
Resolvido galera.
A propriedade é:
oBoleto:SacadorAvalista := "..."
-
Olá Galera.
Qual propriedade devo preencher para o sacador avalista no boleto da Cobrebem em Harbour?
Grato
Pelas colaborações
João Freire de Aguiar
Editado por - jaguiar on 09/09/2009 15:09:55
-
Olá Galera.
Qual propriedade devo preencher para o sacador avalista no boleto da Cobrebem em Harbour?
Grato
Pelas colaborações
João Freire de Aguiar
Editado por - jaguiar on 09/09/2009 15:09:55
-
Olá carÃssimos.
Gostaria de saber como faço param imprimir o boleto bradesco com canhoto em harbour/xHarbour.
Desde já agradeço as colaborações
João Freire de Aguiar
-
Olá carÃssimos.
Gostaria de saber como faço param imprimir o boleto bradesco com canhoto em harbour/xHarbour.
Desde já agradeço as colaborações
João Freire de Aguiar
-
Olá Pessoal.
Uso a nfe do glorioso Gilmer e tenho dúvida se o Sefaz permite a emissão da nfe para pessoa fÃsica.
Alguém pode me responder?
Grato
João Freire de Aguiar
Editado por - jaguiar on 09/09/2009 15:11:42
-
Olá Pessoal.
Uso a nfe do glorioso Gilmer e tenho dúvida se o Sefaz permite a emissão da nfe para pessoa fÃsica.
Alguém pode me responder?
Grato
João Freire de Aguiar
Editado por - jaguiar on 09/09/2009 15:11:42
-
Êta forum porreta!!!
"Pobrema resolvido."
Fui
-
Olá Galera.
O comando para excluir o arquivo eu descobri no fuçômetro.
A sintaxe é FtpDeleteFile(hftp,cFILE)
Agora só falta o bendito ftpDirectory()
Grato
-
Olá Vagner.
Obrigado pela dica.
Parecem ser bastante simples, mas ainda utilizo Harbour 7.01.
Alguém teria um exemplozinho para Harbour?
Grato
Gerenciador de Projetos - Está pronto
in Programação
Posted
Tá pronta a versão inicial com exe e fontes em dicas.
Acompanham dois projetos (sistemas) para deixar claro o funcionamento.
Toda sugestão será bem vinda.
Esqueci de mencionar em dicas: A pasta do programa (MsGpro)deve ser descompactada no raiz do hd, de modo que o path será c:\msgpro ou h:\msgpro, etc.
Estou a disposição para qq esclarecimento.