Page 1 of 1

Problema con Encabezados de TReport

PostPosted: Tue Dec 22, 2015 1:56 am
by Armando
Antonio y amigos del foro:

En versiones anteriores como la FWH0810 cuando el título excedía el ancho de la columna,
el texto se extendía hacia las columnas contiguas, hacia la izquierda si la alineación era a la
derecha y hacia la derecha si la alineación era hacia la izquierda, tal como se ve en el texto
"Totales del inventario:" (Ocupa dos columnas).

Ahora en la versión FWH1507 el texto del título se trunca a la longitud de lo ancho de la columna
tal como se ve en la imagen, el texto en el título de la tercera columna es "Unidad de medida"

¿¿¿Es posible dar el mismo efecto al texto del título como el que tiene el texto de los totales????

Creo que mejor que por default el texto del título se extienda a las columnas contiguas, no?

Saludos

Image

Re: Problema con Encabezados de TReport

PostPosted: Wed Dec 23, 2015 4:02 pm
by Armando
Antonio:

No es posible?

Saludos

Re: Problema con Encabezados de TReport

PostPosted: Mon Dec 28, 2015 4:35 pm
by Armando
Arriba

Re: Problema con Encabezados de TReport

PostPosted: Wed Dec 30, 2015 2:48 am
by FranciscoA
Hola Armando.
Dale un vistazo a la Class TRcolum (RColum.prg), en los metodos SayTitle y SayData.

Si te fijas bien, en el metodo SayData está esta linea: //nWidth := ::oReport:oDevice:GetTextWidth(cText, oFont) // To Review: Why is this line here?

No lo he probado, pero que tal si modificas el metodo SayTitle:
...
...
::nCurLine := nLine

nWidth := ::oReport:oDevice:GetTextWidth(cTiTle, oFont) //aqui agregas esto

//y aqui reemplazas ::nWidth por nWidth
::oReport:oDevice:Say(nRow, nCol, cTitle, oFont, ::nWidth,;
::oReport:aClrText[nFont],,::nPad-1)

Espero que puedas solucionar, sin embargo... ¿Qué pasaría si ancho de las columnas anterior y posterior es pequeño?

Por otro lado, tambien puedes utilizar dos o mas lineas en el titulo de la columna que mencionas.

Saludos.

Re: Problema con Encabezados de TReport

PostPosted: Wed Dec 30, 2015 4:37 am
by Armando
Francisco:

Eres muy amable al darme tu sugerencia, no me gusta meterle mano a las clases por dos
simples razones primero: no tengo el suficiente tiempo ni conocimiento y segunda, te obliga
a que con cada actualización tengas que volver a modificar la clase, por esto prefiero dejar
a los expertos que lo hagan.

Sin embargo, con ganas de aprender seguiré tu sugerencia pues me parece que es mejor
dejar los encabezados como en la clase TSBrowse que utiliza los super encabezados.

Saludos y muchas gracias

Re: Problema con Encabezados de TReport

PostPosted: Wed Dec 30, 2015 4:46 am
by Armando
Francisco:

He intentado tu sugerencia cambiando el código y quedó como sigue:

Code: Select all  Expand view

   nWidth := ::oReport:oDevice:GetTextWidth(cText, oFont)

   if ! Empty( cText )
      if ! ::lMemo
         if ::nVAlign > 0
            nTopMargin  := ::oReport:nRowHeight - Len( ::aData ) * ::nDataHeight
            if ::nVAlign == 1
               nTopMargin  /= 2
            endif
         endif
      endif
      ::oReport:oDevice:Say( nRow + nTopMargin, nCol, cText, oFont, nWidth,;
                           ::oReport:aClrText[nFont],,::nPad-1)
 


Agregue el RColumn.Prg a mi script de compilación pero no hubo cambio, me falta algo?

Saludos

Re: Problema con Encabezados de TReport

PostPosted: Wed Dec 30, 2015 11:33 pm
by FranciscoA
Armando.
No estoy seguro que esas lineas que muestras sean del metodo SayTitle. (En mi version son otras)
En esto momento estoy fuera. Mas tarde te digo.
Saludos.

Re: Problema con Encabezados de TReport

PostPosted: Thu Dec 31, 2015 1:12 am
by Armando
Francisco:

No había entendido, ya ves porqué no me animo a modificar clases?.

Correcto, ahora todo va bien, ya nada mas habré de tener cuidado
cuando cambie de versión.

Así quedó:

Code: Select all  Expand view

      nWidth := ::oReport:oDevice:GetTextWidth(cTitle, oFont)

     ::oReport:oDevice:Say(nRow, nCol, cTitle, oFont, nWidth,;
                           ::oReport:aClrText[nFont],,::nPad-1)


Saludos y muchas gracias

Re: Problema con Encabezados de TReport

PostPosted: Thu Dec 31, 2015 1:30 am
by FranciscoA
Me alegra que lo hayas solucionado.

Feliz año nuevo...!