Power Builder - SOS! No quiero que salga el header..

 
Vista:

SOS! No quiero que salga el header..

Publicado por Miguel Angel (64 intervenciones) el 07/11/2002 16:03:25
A ver si alguien puede echarme una mano...

Tengo un report, que es tipo carta, con el membrete y el "Muy señores nuestros", etc, que solo quiero que salga en la primera pagina,

¿COMO PUEDO HACER QUE NO SALGA EL HEADER EN EL RESTO DE LAS PAGINAS?

Gracias.
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:SOS! No quiero que salga el header..

Publicado por Ricardo (1957 intervenciones) el 07/11/2002 16:29:32
Hola que tal:

Se me ocurre al estar leyendo tu pregunta que puedes controlar la visualización de los objetos del header de acuerdo al numero de la pagina ( page() ), es decir, si la pagina es 1 se visualizan, sino, quedan invisibles.

Debe de funcionar, sólo que si tienes demasiados datos en el encabezado va a ser laborioso.

A ver si alguien más tiene otra idea.

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

¿Como pongo if page() <> 1 then header.height

Publicado por Miguel Angel (64 intervenciones) el 07/11/2002 16:52:12
Gracias Ricardo.

Pues si, eso es lo que he hecho cuando me lo ha pedido el jefe, peeeero ahora no le gusta que quede un hueco en la parte de arriba de la hoja... (donde hay patrón no manda marinero).

Necesito poner algo asi:

if page() <> 1 then header.height = 0

pero no se donde !!!!

Por favor ....
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:¿Como pongo if page() <> 1 then header.heig

Publicado por Ricardo (4 intervenciones) el 08/11/2002 01:41:05
Ok.

En ese caso te tendras que auxiliar de la funcion Describe, Modify o directamente al objeto, cuya aplicación alcanza a los DW y puedes apuntar al objeto del DW que desees, en este caso la banda llamada Header.

Por ejemplo: IF(page( )=1,dw_1.Object.DataWindow.Header.Height = 0, //// lo que mida actualmente)

ó

dw_1.Modify("DataWindow.Head.Height=0")

el que tu quieras utilizar.

Donde te imaginas que pueda ir la este código ?... exactamente, puede ser en el evento printpage o se me ocurre en otros, tales como: scrollvertical, rowfocuschanged.

Espero te funcione, ya que como te comente no he tenido esa necesidad, pero resulta lógico.

Si alguien tiene alguna otra idea. Si te funciona comentanos cual fue el procedimiento utilizado.

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

Estoy muy espeso...

Publicado por Miguel Angel (64 intervenciones) el 08/11/2002 09:14:59
Debe ser que acabo de volver de vacaciones, pero estoy muuuy espeso. Lo cierto es que no conocia el evento printpage (no lo he usado nunca), y la verdad, los describes y evaluates tampoco son lo mio. He puesto:

dw_1.describe(" evaluate('if( page() = 1, 1, 0)', 1)")

... porque no me dejaba hacer simplemente " page() ", no se por que, y eso en el evento printpage me devuelve un 1 en la primera pagina, y 0 en las siguientes. Hasta ahi bien. El siguiente paso lógico era, evaluando eso, cambiar el tamaño del header:

if dw_1.describe(" evaluate('if( page() = 1, 1, 0)', 1)") = "1" then
dw_1.modify(" datawindow.header.height = 1588 ")
else
dw_1.modify(" datawindow.header.height = 0 ")
end if

Pues esto lo que hace es sacarme TODAS las hojas en blanco. La medida de 1588 es en PBU's, y es correcta. Por cierto estoy usando PB6.5

¿Alguna ayudita?
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:Estoy muy espeso...

Publicado por Ricardo (1957 intervenciones) el 08/11/2002 17:13:42
Hola que tal:

Termine por realizar la prueba para comprobar mi teroria, te envío el código que utilice para eliminar el encabezado despues de la segunda pagina.

Integer li_page

li_page = dw_reporte.GetItemNumber(dw_reporte.GetRow(), 'c_pageactual') // Opte por generar un compute para obtener el valor, no es elegante pero resulto practico y funciona!
MessageBox("PAGE", li_page)

IF li_page = 1 THEN
dw_reporte.Object.DataWindow.Header.Height = 324
ELSE
dw_reporte.Object.DataWindow.Header.Height = 0
END IF

Listo!, 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

RE:Estoy muy espeso...

Publicado por Miguel Angel (64 intervenciones) el 11/11/2002 09:28:57
Pues debe ser porque en la cabecera tengo un report anidado o por mi version de pb, la 6.5, pero no va. Y ya desisto. Muchas gracias Ricardo.
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:Estoy muy espeso...

Publicado por Ricardo (1957 intervenciones) el 11/11/2002 17:39:18
Algo que podrias hacer es dejar invisible ese otro objeto que tienes en el header.

En fin suerte!

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