Problema con Encabezados de TReport

Post Reply
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Problema con Encabezados de TReport

Post 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
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Problema con Encabezados de TReport

Post by Armando »

Antonio:

No es posible?

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Problema con Encabezados de TReport

Post by Armando »

Arriba
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
FranciscoA
Posts: 2163
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Problema con Encabezados de TReport

Post 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.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Problema con Encabezados de TReport

Post 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
Last edited by Armando on Wed Dec 30, 2015 10:10 pm, edited 1 time in total.
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Problema con Encabezados de TReport

Post by Armando »

Francisco:

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

Code: Select all | Expand


   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
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
FranciscoA
Posts: 2163
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Problema con Encabezados de TReport

Post 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.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Problema con Encabezados de TReport

Post 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


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

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


Saludos y muchas gracias
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
FranciscoA
Posts: 2163
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Problema con Encabezados de TReport

Post by FranciscoA »

Me alegra que lo hayas solucionado.

Feliz año nuevo...!
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
Post Reply