FoxPro/Visual FoxPro - No de Hojas de un Reporte

 
Vista:

No de Hojas de un Reporte

Publicado por Carlos Lopez (33 intervenciones) el 05/12/2000 00:00:00
Como puedo saber el numero de hojas que ocupa un reporte antes de imprimirlo?


gracias de antemano
saludos
Carlos
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:No de Hojas de un Reporte

Publicado por Marga del Pino (10 intervenciones) el 05/12/2000 00:00:00
No sé si en Lawebdelprogramador o en otro sitio de VFP, leí un truco que más o menos se parece al que te propongo, que no es muy elegante pero resuelve.

Si vas a utilizarlo para todos los reportes, declara una variable pública en el programa principal, y dale el valor máximo. Cada instrucción report form debe convertirse en dos consecutivas, la primera es falsa hacia un fichero (borrar por ejemplo), la segunda es la real, o sea:

En el programa principal:
public pagfinal
pagfinal=9999

Las llamadas al reporte
report form <reporte> to file borrar noconsole
report form <reporte> .....

Además el reporte en el evento CloseTables del dataenvironment debe tener
pagfinal=_pageno

y en el encabezamiento del reporte un campo texto cuyo contenido sea la variable pagfinal.

Es en la segunda llamada al reporte donde se conoce la cantidad de páginas que tiene.
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:No de Hojas de un Reporte

Publicado por Eleazar (11 intervenciones) el 06/12/2000 00:00:00
yo lo tengo hecho de una manera un poco mas diferente (esto es en caso si por cada linea impresa es un registro)
num_reg=numero de registros a imprimir
num_x_hoja=numero de registros que caben por hoja
tot_hojas=iif(num_reg%num_x_hoja=0,num_reg/num_x_hoja,int(num_reg/num_x_hoja))
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:No de Hojas de un Reporte

Publicado por Gracias (1 intervención) el 05/12/2000 00:00:00
Gracias Marga, creo que no ando tan mal.
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:No de Hojas de un Reporte

Publicado por Alberto Sánchez (87 intervenciones) el 05/12/2000 00:00:00
Hola, Carlos ...

Tengo una sugerencia para tu problema y creo que es la más viable para poderla meter a un proceso general en tu libreria de Funciones y es el siguiente:

*/ Mandas una llamada del reporte en cuestion */
REPORT FORM frReporte RANGE 9000 NOCONSOLE

*/ Y almacenas la variable _PageNo en una Publica
nPages = _PageNo

*/ y listo, tienes tu dato ...
Esto también te puede funcionar para elaborar una cadena de numeracion de paginas como:

1 de 20 ó Pag. 1 / 20 ó Pagina #1 / 20, etc.

Ojalá te sirva y quedo a tus órdenes para cualquier comentario.


Saludos
Alberto Sánchez.
[email protected]
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