Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Como Parametrizar una cuenta y Visualizar en un TreeView (https://www.clubdelphi.com/foros/showthread.php?t=11621)

Gustavo Gowdak 19-06-2004 00:59:48

Como Parametrizar una cuenta y Visualizar en un TreeView
 
Hola amigos tengo un problema, estoy realizando un software de un sistema contable, en donde yo quiero parametrizar mis cuentas en pantalla, sin que esto ocurra en mi base de datos, como hago??, por ejemplo yo tengo una cuenta en mi base de datos con este formato 1000000, y quiero que en pantalla me muestre 1.0.0.00.00 y luego visualizar en un TreeView debididos por cada nivel de cuenta, entienden????

Desde ya Gracias, ojala me puedan ayudar :(

Lepe 19-06-2004 15:42:02

Creo entender que quieres hacer mas o menos como contaplus y los números de cuenta.

Yo el número de la base de datos lo guardaría como un string, por aquello de los puntos. Si tienes un número 1.0.0.00.00 no tiene el mismo ancho entre puntos, o sea, en algunos sitios solo usas un dígito, y en otros 2 digitos para representar las cuentas, por tanto: Si guardas el número sin los puntos, despues ¿como te las arreglas para insertar los puntos en pantalla?.

Por otra parte, Teniendo el punto guardado en la base de datos, al mostrarlo en un TTreview, solo tendrías que recorrer la tira de caracteres y cuando encuentres un punto, añadir un subnivel al arbol. Para hacer esto, puedes crear un TstringList, y le pones :
Código Delphi [-]
  s.DelimitedChar := '.' 
  s.delimitedText:= '1.0.0.00.00';

{el stringlist quedaria de la forma:
s[0]:= '1';
s[1]:= '0';
s[2]:= '0';
s[3]:= '00';
s[1]:= '00';
}

cuentaNivel4 := s[3];  //1.0.0.00.00

Con esto tambien ganas en independencia, ya que si te dicen que añadas un dígito más a las cuentas de nivel 2 (1.0.0.00.00 solamente tienes que modificar el valor de la base de datos, todo el proceso para mostrarlo en el TTreeview te seguría funcionando.

A ver que otras sugerencias hay :)

Saludos

Jvilomar 19-06-2004 16:48:49

Hola... una pequeña sugerencia.. a ver si no estoy perdido....

todo depende de si utiliza los dbAwares para manejar los datos.. o sea.. tTable,tQuery, etc.

si es asi.... me parece que podrias utilizar la propiedad DisplayFormat desde el Editor de Campos (FieldEditor).

o me equivoco? a ver que opinan.....

nicolasdom 15-10-2004 19:30:41

Y cual seria la manera mas facil y rapida de ver las cuentas en un treeview?

Lepe 16-10-2004 11:42:27

Según mi filosofia,
1.- cargar las cuentas de nivel 1 y poner HasChildren a true para todos los nodos,
2.- En el evento OnExpand, detectar el nodo, mirar si tiene subcuentas y desplegar las cuentas del siguiente nivel
3.- Esperar al paso 2

Saludos


La franja horaria es GMT +2. Ahora son las 07:00:22.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi