FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour xBrowse, justificar datos de una columna (resuelto)
Posts: 400
Joined: Tue Oct 16, 2007 05:51 PM
xBrowse, justificar datos de una columna (resuelto)
Posted: Thu Jun 25, 2015 02:14 AM
Saludos,

Como hago para que una columna de un xbrowse se pueda justificar de la forma que describo
abajo, es para usarlo con una tabla dbf que maneja un catalogo de cuentas de contabilidad.

Code (fw): Select all Collapse
  =================================== 
  CUENTA                 DESCRIPCION
  ===================================
  | 1-0-0-00-000      |   
  |   1-1-0-00-000    |           
  |     1-1-1-00-000  |   
  | 2-0-0-00-000      |
  |   2-0-0-00-000    |


El codigo que uso es el siguiente :

Code (fw): Select all Collapse
cAlias := Catalogo->(Alias())

REDEFINE XBROWSE oBrw ID 100 OF oDlg;
     DATASOURCE cAlias;
     COLUMNS {|| NivelCuenta(Catalogo->NumCta)}, "Nombre", "Clase";
     HEADERS "Numero", "Nombre", "Clase";
     JUSTIFY AL_LEFT, AL_LEFT, AL_LEFT;   
     AUTOSORT;
     CELL LINES NOBORDER 

//------------------------------------------------------------//

static Function NivelCuenta( cCuenta )
  local cResult := cCuenta
  
  if SubStr(cCuenta,3,1) <> "0"
     cResult := " " + cCuenta 
     if SubStr(cCuenta,5,2) <> "00"
        cResult := " " + cResult
     endif
  endif
      
return cResult


el problema que tengo es que aunque le agregue espacios en blanco delante no los toma en cuenta.

Saludos cordiales,
Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Thu Jun 25, 2015 11:16 AM

Yo probaria quitando el atributo de justificacion de la columna para el cuerpo del xbrowse. Quiza ese atributo este forzando un ltrim()

Posts: 400
Joined: Tue Oct 16, 2007 05:51 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Thu Jun 25, 2015 11:41 PM
hmpaquito,

ya lo habia probado quitando la clausula JUSTIFY ... pero el resultado es el mismo, lo que es cierto es que
xbrowse al cargar la columna elimina los espacios en blanco tanto a la izquierda como a la derecha.

lo comprobe reemplazando en la funcion el espacio por otro caracter, en este caso el ".",
para este caso si funciona pero no se ve bien.

Code (fw): Select all Collapse
//------------------------------------------------------------//

static Function NivelCuenta( cCuenta )
  local cResult 
  
  cCuenta := AllTrim(cCuenta)
  cResult := AllTrim(cCuenta)
  
  if SubStr(cCuenta,3,1) <> "0"
     cResult := "." + cResult
     if SubStr(cCuenta,5,2) <> "00"
        cResult := "." + cResult
     endif
  endif
      
return cResult


A ver si Mr. RAO me da una pista...

Saludos,
Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Fri Jun 26, 2015 12:14 AM

Y si añades Chr(9) ?

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 400
Joined: Tue Oct 16, 2007 05:51 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Fri Jun 26, 2015 12:21 AM

cnavarro,

probe chr(9) y nada, hace lo mismo que con espacio.

Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Fri Jun 26, 2015 02:44 AM

Saludos.

yo no uso el xBrowse, es el TsBrowse, pero esto me funciona, checa la columna 2, en variable
no justifico la aplicacion sino la descripcion

columna ventana padc("APLICACION",LONG_MASC) en CataCuen; // 1
variable {||PresentaApl(apl_con)} color {COLOR_AZUL,COLOR_SAZUL}
columna ventana padc("NOMBRE DE LA CUENTA",nLong) en CataCuen; // 2
variable {||padr(space(val(niv_apl)*4-4)+nom_apl,nLong)}; // nLong es el len(descripcion de apl)
formato "@!"

Noé Aburto Sánchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Fri Jun 26, 2015 02:50 AM

columna ventana padc("APLICACION",LONG_MASC) en CataCuen variable {||PresentaApl(apl_con)} color {COLOR_AZUL,COLOR_SAZUL}
columna ventana padc("NOMBRE DE LA CUENTA",nLong) en CataCuen  variable {||padr(space(val(niv_apl)*4-4)+nom_apl,nLong)}  // nLong es el len(descripcion de apl)
Noé Aburto Sánchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 400
Joined: Tue Oct 16, 2007 05:51 PM
Re: xBrowse, como mostrar filas de columna en forma de cascada ?
Posted: Fri Jun 26, 2015 03:01 AM

Saludos noe,

Nunca he usado TsBrowse, uso xbrowse solamente. Agregando que trabajo con Harbour.

:oops:

Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: Para Rao, xBrowse, justificar datos de una columna ...
Posted: Fri Jun 26, 2015 07:41 AM

Un super hacking es que uses oemtoansi(chr(255)) en vez de space(1) para hacer la sangria

Posts: 400
Joined: Tue Oct 16, 2007 05:51 PM
Re: Para Rao, xBrowse, justificar datos de una columna ...
Posted: Fri Jun 26, 2015 03:12 PM

hmpaquito,

Eres un super hacking, funciono.

Gracias,

:D

Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com

Continue the discussion