FoxPro/Visual FoxPro - PAGINA n DE tot

 
Vista:

PAGINA n DE tot

Publicado por TITO (356 intervenciones) el 08/08/2003 06:30:46
En un informe impreso coloco la variable que corresponde al numero de pagina pero lo que no he encontrado es la variable del total de paginas; vale decir, en las hojas impresas necesito que aparezca:
1 de 20, 2 de 20, 3 de 20 ,...etc cual es la variable que me entrega el numero 20 (o sea el total de paginas)?
Gracias por vuestra ayuda
TITO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PAGINA n DE tot

Publicado por Albert (31 intervenciones) el 08/08/2003 09:17:56
Se debe ejecutar el mismo reporte 2 veces.

Yo hago de la sigte manera:

*-- Tengo un .prg llamado Utility.prg dentro de la cual tengo una funcion

*-- Funcion que permite devolver el total de paginas de un report
*-- para llamar ---> lnTotPaginas = report_contapaginas("NombreDelReport")
****--------------------------------------------
Function report_contapaginas()
PARAMETERS lc_report
LOCAL nPaginas
nPaginas = 0
DEFINE WINDOW x FROM 1,1 TO 2,2
ACTIVATE WINDOW x NOSHOW
REPORT FORM (lc_report) NOCONSOLE
nPaginas = _PAGENO
RELEASE WINDOW x
RETURN npaginas
EndFunc

****--------------------------------------------

*-- Luego cuando deseo mostrar el Report ejecuto estas lineas
Set procedure to curdir()+"program/utility.prg"

*- Esta variable contendra la cantidad total de paginas
Public lnTotPaginas
lnTotPaginas = 0

*- Pongo en cInforme el nombre del report y a continuacion llamo a la funcion
*- Esto me devuelve en lnTotPaginas el total de pag.
cInforme = curdir()+"reports/NombreReport.frx"
lnTotPaginas = report_contapaginas(cInforme)

*- Ejecuto el report para mostrar en pantalla
Report form (cInforme) preview

****--------------------------------------------

*-- Y por ultimo, dentro del report pongo lo sgte.
'Pagina: ' + Alltrim(Str(_pageno)) + " de " + Alltrim(Str(lnTotPaginas))

Espero que te sirva, un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PAGINA n DE tot

Publicado por Elio Mora (26 intervenciones) el 09/08/2003 04:51:02
Hermano en mi caso solo ejecuto lo siguiente antes de realizar un reporte,
************** para el total de paginas **************
Define Window x From 1,1 To 20,20
Activate Window x NoShow
CUANTAS = 0
cReporte = 'resumen_cargo_nomina_quincenal'
Report Form (cReporte)
CUANTAS = _PAGENO
Release Window x
Activate Window ALL
************** para el total de paginas **************
la variable publica CUANTAS me almacena el numero total de paginas, luego en el reporte coloco un campo

`Pagina Nº'+alltrim(str(_pageno,8))+'/'+alltrim(str(cuantas,8))

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar