Impresión

Necesito saber antes de imprimir el numero de páginas exactas que voy a ocupar. Actualmente en pantalla veo en numero de páginas pero el momento de imprimir me sale menos páginas es decir cada pantalla es una página...

1 Respuesta

Respuesta
1
Tu pregunta tiene una fácil solución,
primero y aunque te parezca duplicidad de recursos, deber crear un DATASTORE el cual contenga a un DataWindow Object, exactamente igual al que estas presentando en pantalla, ya sea de tipo external datawindow o basado en una tabla, ( si esta basado en una tabla es más fácil de manejar)
Este datastore no es visible y se siñe a los parámetros del datawindow object, lo que sucede es que cada vez que presentas o pintas en pantalla un datawindow, este se configura según el tamaño del datawindow control, y por eso tus páginas son de distinto tamaño en lineas y por ende las páginas no se coordinan con lo que ves y lo que sale por la impresora.
Una vez recogidos los datos en el datastore, puedes utilizar interrogantes a este como el numero de lineas que tiene en total.
Ahora la cuestión no es tan fácil, pues primero hay que crear una variable tipo LONG, y que sea global, luego también global creas una función, la cual acepta un valor como parámetro y es de tipo global también, dentro de la función asignas el valor recibido a la variable global y retorna un valor cualquiera por ejemplo CERO, para finalizar creas un objeto tipo computed dentro del datawindow object, el cual utiliza una función para poder ser asignado colocas dentro de este el llamado de tu función y como parámetro le envías la función PAGECOUNT(), esta función, devuelve el numero de páginas que fueron generadas pero solo puede ser usada dentro del datawindow object.
Para finalizar, cuando finalices de cargar los datos en el datastore, podrás preguntar por el valor que posee la variable global, la cual contendrá el numero de páginas generadas.
Interrogantes:
Porque un datastore
La respuesta es muy sencilla, porque el datastore es un objeto no visual y cuando recibe los datos, configura la página del tamaño según seleccionado en las propiedades de impresión, lo contrario del datawindow, que es configurado según el tamaño del control.
Porque no puedo utilizar la función directamente.
Porque es una función propia del datawindow object y unicamente dentro de este esta disponible.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas