FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Salto de página en Treport
Posts: 131
Joined: Tue Dec 26, 2006 04:50 PM
Salto de página en Treport
Posted: Fri May 21, 2010 03:12 PM
Compañeros del foro, como le puedo hacer para insertar un salto de pagina en unreporte?

En el ejemplo:
Code (fw): Select all Collapse
private oReptod

cImpresora:=PRINTERSETUP()
use sort1      
report oReptod TITLE " "," ","******  encabezado del reporte ";
,"Linea 2 del encabeazado";
,"Linea 3 del encabezado";
,"Linea 4 del encabezado";
,"Linea 5 del encabezado";
,"Linea 6 del encabezado";
,"Linea 7 del encabezado";
,"Linea 8 del encabezado";
,"Linea 9 del encabzado";
CAPTION"Impresión de reporte";
Font oFont1, ofont2, oFont3, oFont4, oFont5;
PEN Open1, oPen2;
header" ";
Footer" " preview
column title "campo 1" data sort1->campo1 grid 1 size 9 Font 3
column title "Campo 2" data sort1->campo2 grid 1 size 9 Font 3
column title "Campo 3" data sort1->campo3 grid 1 size 9 Font 3
column title "Campo 4" data sort1->campo4 grid 1 size 9 Font 3
column title "Campo 5" data sort1->campo5 grid 1 size 9 Font 3
#DEFINE LINE_LEFT 1
#DEFINE LINE_RIGHT 2
end report
oLine := oReptod:oTitle
oLine:aPad[3] := LINE_RIGHT
oLine:aPad[5] := LINE_RIGHT
oLine:aPad[6] := LINE_LEFT
oLine:aPad[7] := LINE_LEFT
oLine:aPad[8] := LINE_LEFT
oLine:aPad[9] := LINE_LEFT
oLine:aFont[1] := {|| 5}
oLine:aFont[2] := {|| 2}
oLine:aFont[3] := {|| 2}
oLine:aFont[4] := {|| 2}
oLine:aFont[5] := {|| 2}
oLine:aFont[6] := {|| 2}
oLine:aFont[7] := {|| 2}
oLine:aFont[8] := {|| 2}
oLine:aFont[9] := {|| 2}
oLine1 := oReptod:oFooter
oLine1:aPad[1] := LINE_RIGHT
oLine1:aFont[1] := {|| 2}
oReptod:nTitleupLine := RPT_SINGLELINE
oReptod:nTotalLine := RPT_SINGLELINE
oReptod:Margin(.28, RPT_LEFT, RPT_INCHES)
oReptod:Margin(.5, RPT_TOP, RPT_INCHES)
oReptod:Margin(.2, RPT_RIGHT, RPT_INCHES)
oReptod:Margin(.1, RPT_BOTTOM, RPT_INCHES)
IF oReptod:lCreated
  oReptod:bPostEnd := { || firmas(oReptod )}
ENDIF
activate report oReptod;
on startpage pics(oReptod)
oFont1:end()
oFont2:end()
oFont3:end()      
oFont4:end()      
oFont5:end()     
oPen1:end()

oPen2:end()
return NIL


Necesito su ayuda para poner un contador de líneas ya que solo puedo tener 23 registros de mi base de datos impresos por página, una vez que el contador llegue a 23 ejecute la impresión de unas firmas [oReptod:bPostEnd := { || firmas(oReptod)}], haga un salto de página y continue imprimiendo los registros que faltan hasta llegar otra vez a 23 y volver a hacer este proceso tantas veces como sea necesario de acuerdo a los registros de la base de datos. ¿Es posible hacer esto? y si es asi ¿Como se puede implementar?

Muchas gracias por su ayuda
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
Re: Salto de página en Treport
Posted: Fri May 21, 2010 06:34 PM

Hola,

prueba algo asi

oreport:bskip := {|| if( oreport:nDataLine = 23, ( Firmas(), oreport:endPage() ), ), dbf-> ( DBSKIP() ) }

saludos

Marcelo

Continue the discussion