![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Estás mezclando la interfaz con la lógica de la aplicación... no es buena idea porque te complica todo lo demás.
En teoría, deberías tener una jerarquía de clases, o al menos varias listas unas dentro de otras formando el arbol... pero con TObject y TObjectList. Eso ya te da toda la potencia para calcular los totales y lo que quieras. Pasarlo al Treeview, es sólo recorrer las listas y crear nodos... cosa de poca monta, vamos.
Con una definición así puedes hacer todas las virguerías que quieras, sumas, eventos al modificar una cuenta y un total... etc. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#2
|
||||
|
||||
|
Cita:
Si no es molestia, yo me meto también. Yo me imagino un esquemita más complicado. Si me disculpan, he aquí un Composite:
Se que es muy simple pero creo que se entiende el principio. La clase TCuentaCompuesta tiene un lista de cuentas. Este listado puede estar formado por cuentas simples, o incluso otras cuentas compuestas. Básicamente el método SetTotal de una clase TCuentaCompuesta iterará recursivamente por todas las TCuentaCompuesta que componen el listado, hasta llegar a las cuentas simples. Fíjese que TCuentaCompuesta posee un método AddCuenta y por tanto pueden añadirse ambos tipos de cuenta. Bajo este patrón Composite, se puede trabajar en forma análoga al esquema "árbol". Si bien es un diseño un tantito más complejo debido a que introduce nuevas clases, en ocasiones este diseño es útil puesta que aclara mejor como el dominio. Se ve claramente como se tratan las cuentas simples de las compuestas. Bueno, es sólo otra opción. Desde lo lógico. Como menciona Lepe. ![]() Saludos compuestos, |
|
#3
|
||||
|
||||
|
Esta como para poner en el libro jeje Iba a sugerir una funcion recursiva para calcular los totales recorriendo el TreeView, pero me parece que esto que proponen es mas elegante
![]() Saludos |
|
#4
|
|||
|
|||
|
Perfecto amigo lepe, en mi objeto cuentaContable tengo asociada CuentaMadre que hace referencia por supuesto a la cuenta que la agrupa (aca la jerarquia es entre madres , abuelas, etc. las mujeres dominan
). es simple para cada cuenta voy recorriendo y obteniendo los totales con una funcion recursiva. Cuando tenga el codigo lo posteo, pero con la idea de base no tendra mucho valor. Gracias por aclararme los tantos, estaba por "ensuciar" mi clase, encima no se me ocurría como. Saludos. |
|
#5
|
|||
|
|||
|
Lo logre!!!
Metodos de mi clase :
Luego desde el form para mostrar en el arbol:
Gracias a todos. Mision Cumplida!!! |
|
#6
|
||||
|
||||
|
Te voy a comentar una chapuza (con la esperanza de que alguien me de soluciones... ¿por qué no?
) para evitar los moldeos de tipos.Desde luego el código se hace más legible y es muy muy fácil hacerlo. En Tcuentascontables defines una función:
De forma que tu linea: quedaría como :
Este truquito lo he usado en una sóla ocasión, y la verdad el código se aclaró bastante en legibilidad. No sé si hay otra solución, espero que sí .En mi caso, tanto Talbaran, TFactura y TCliente heredaban de TBaseObject y en TBaseObject creé esas 3 funciones asAlbaran, AsFactura, AsCliente. Por supuesto en la aplicación siempre usaba TBaseObject para crear los objetos: A partir de ahora, uso nuevo.asAlbaran y elimino todos los moldeos de tipos que usaba en la aplicación final. Por supuesto debes saber lo que haces, porque si tienes un Talbaran y pides asCliente tendrás errores de ejecución (probablemente...). Como ves, realmente el moldeo de tipos no hay quien lo quite, está presente en las funciones, pero en la aplicación final no tienes ninguno. Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 18-12-2008 a las 11:02:47. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Recorrer Tabla, contar registro repetidos y escribir totales en otra Tabla | Lucas_diaz1810 | Conexión con bases de datos | 1 | 25-12-2006 13:04:34 |
| Como recorrer un los item de un treeview | Shidalis | OOP | 7 | 03-08-2005 17:06:29 |
| Como utilizar el Treeview, desplegar la info del arbol binario al treeview | leo21 | Varios | 2 | 08-04-2004 22:47:30 |
| Como utilizar el Treeview, desplegar la info del arbol binario al treeview | leo21 | OOP | 1 | 08-04-2004 22:42:44 |
| Recorrer un Treeview | mateamargo | OOP | 0 | 11-11-2003 16:53:39 |
|