Código: Selecionar todos
oPDF := PDFClass()
IF oPDF == NIL
hwg_msginfo("Falha da criação do objeto PDF")
RETURN .F.
ENDIF
HB_GTINFO( HB_GTI_CLIPBOARDDATA, ::cFileName)
oPDF:cFileName := ::cFileName
oPDF:cDefaultPrinter := ::cDefaultPrinter
oPDF:SetType( PDFCLASS_LANDSCAPE )
oPDF:Begin()
nLinha := 100
nPagina := 1
nMaxCol := oPDF:MaxCol()
DO WHILE ! oQuery:Eof()
IF nLinha > 96
oPDF:AddPage()
oPDF:DrawBox( 0, 0, 9, 41, Nil, Nil, Nil ) // box esquerdo
oPDF:DrawImageSize( 0.5, 0.5, 8, 39, "logotipo.jpg" ) // logotipo
oPDF:DrawBox( 0, 41, 9, 117, Nil, Nil, Nil ) // box centro
oPDF:DrawText( 2.0, 42, RTRIM(oQuery1:Fields( "NomeUsuario" ):Value), nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 3.5, 42, RTRIM(oQuery1:Fields( "n_xLgr" ):Value) + ', ' + RTRIM(oQuery1:Fields( "n_nro" ):Value), Nil, 8, "Helvetica", Nil, Nil )
oPDF:DrawText( 5.0, 42,'BAIRRO - ' + RTRIM(oQuery1:Fields( "n_xBairro" ):Value), Nil, 8, "Helvetica", Nil, Nil )
oPDF:DrawText( 6.4, 42, "CEP " +oQuery1:Fields( "n_CEP" ):Value + ' - ' + RTRIM(oQuery1:Fields( "n_xMun" ):Value) + ' - ' + oQuery1:Fields( "n_xUF" ):Value + " - FONE: " +oQuery1:Fields( "n_fone" ):Value, Nil, 8, "Helvetica", Nil, Nil )
oPDF:DrawText( 8.0, 42, 'CNPJ-'+RTRIM(oQuery1:Fields( "n_CNPJ" ):Value) + ' Insc.Est.-' + RTRIM(oQuery1:Fields( "n_IE" ):Value) , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawBox( 0, nMaxCol, 9, 41, Nil, Nil, Nil ) // box direito
oPDF:DrawText( 2, 120, "CONTAS A RECEBER " , Nil, 10, "Helvetica", Nil, Nil )
oPDF:DrawText( 4, 120, "PAGINA Nr.: " + STRZERO(nPagina,4,0), Nil, 10, "Helvetica", Nil, Nil )
oPDF:DrawText( 6, 120, "DATA: " + DTOC(M->DAT_HOJE), Nil, 10, "Helvetica", Nil, Nil )
oPDF:DrawText( 8, 120, "HORA: " + TIME(), Nil, 10, "Helvetica", Nil, Nil )
oPDF:DrawBox( 9, 0, 12, nMaxCol, Nil, Nil, Nil )
oPDF:DrawText( 11, 3, "PERIODO DE "+DTOC(::dPERINI)+" A "+DTOC(::dPERFIN), Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawBox( 12, 0, 15, nMaxCol, Nil, Nil, Nil )
oPDF:DrawText( 14, 3, "CLIENTE: "+STRZERO(oQuery:Fields( "CLIENTES_ID" ):Value,11,0)+"-"+oQuery:Fields( "nraz_soc" ):Value , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawBox( 15, 0, 17.5, nMaxCol, Nil, Nil, Nil )
oPDF:DrawText( 17, 01, "TITULO", Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 21, "VENCIMENTO" , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 41, "DIAS" , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 52, "MORA" , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 64, "JUROS" , Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 76, "VALOR TITULO", Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 99, "ACRESCIMOS", Nil, 10, "Helvetica-Bold", Nil, Nil )
oPDF:DrawText( 17, 124, "TOTAL RECEBER", Nil, 10, "Helvetica-Bold", Nil, Nil )
nLinha := 19
nPagina += 1
ENDIF
nMULTA:=0.00
nJUROS:=0.00
IF (M->DAT_HOJE-oQuery:Fields( "DATVEN" ):Value) > 0
IF M->DAT_HOJE > oQuery:Fields( "VENPRO" ):Value
nMULTA=oQuery:Fields( "MORA" ):Value*(M->DAT_HOJE-oQuery:Fields( "DATVEN" ):Value)
nJUROS=(oQuery:Fields( "VALOR" ):Value*oQuery:Fields( "PER_MULTA" ):Value*(M->DAT_HOJE-oQuery:Fields( "DATVEN" ):Value))/3000
END
END
nACRESCIMOS+=nMULTA+nJUROS
nTOTALARECEBER+=oQuery:Fields( "VALOR" ):Value+nMULTA+nJUROS
oPDF:DrawText( nLinha, 00, STRZERO(oQuery:Fields( "DOCUMENTO" ):Value,9,0) + "/" + STRZERO(oQuery:Fields( "PARCELA" ):Value,2,0), Nil, 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha, 22, oQuery:Fields( "DATVEN" ):Value, Nil, 10, "Courier-Bold", Nil, Nil )
IF (M->DAT_HOJE-oQuery:Fields( "DATVEN" ):Value) > 0
oPDF:DrawText( nLinha, 41, (M->DAT_HOJE-oQuery:Fields( "DATVEN" ):Value), "9999", 10, "Courier-Bold", Nil, Nil )
ENDIF
oPDF:DrawText( nLinha, 50, oQuery:Fields( "MORA" ):Value, "@E 999.99", 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha, 64, oQuery:Fields( "PER_MULTA" ):Value, "@E 999.99", 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha, 75, oQuery:Fields( "VALOR" ):Value, "@E 99,999,999.99", 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha, 103, nMULTA+nJUROS, "@E 99,999.99", 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha, 126, oQuery:Fields( "VALOR" ):Value+nMULTA+nJUROS, "@E 99,999,999.99", 10, "Courier-Bold", Nil, Nil )
nLinha +=2
nTOTGERAL+=oQuery:Fields( "VALOR" ):Value
oQuery:MoveNext()
ENDDO
IF nTOTGERAL # 0.00
oPDF:DrawBox( nLinha, 0, nLinha+3, nMaxCol, Nil, Nil, Nil )
oPDF:DrawText( nLinha+2, 75, transform(nTOTGERAL,"@E 99,999,999.99") , Nil, 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha+2, 103, transform(nACRESCIMOS,"@E 99,999.99") , Nil, 10, "Courier-Bold", Nil, Nil )
oPDF:DrawText( nLinha+2, 126, transform(nTOTALARECEBER,"@E 99,999,999.99") , Nil, 10, "Courier-Bold", Nil, Nil )
ENDIF
oPDF:End( )
oPDF:PrintPreview( )
RETURN NIL