Hola. Tengo la siguiente necesidad y sinceramente no se ni por donde empezar.
Lo que pido es si alguien puede al menos orientarme en el siguiente tema:
Objetivo principal: dibujar un arbol del tipo general ( es decir no es un arbol binario), según los datos que tengo en una tabla. ( se trata de un organigrama de oficinas)
Primero detallo a continuación una muestra de algunos de los datos que tendria la tabla, con las columnas id, oficinas_id, codigo:
204,0,S11000
205,204,S11100
206,205,S11120
207,206,S11121
208,206,S11122
209,205,S11130
213,205,S11150
214,213,S11151
215,213,S11152
210,205,S11140
211,210,S11141
212,210,S11142
Y luego muestro lo que debiera ser el resultado final de mi programa en base a los datos antes mostrados.
Como comentario, notese que por ejemplo la oficina S11150 es padre de S11151 y S11152, lo que se ve en la tabla de datos con
213,205,S11150
214,213,S11151
215,213,S11152
En donde se ve que los codigos S11151 y S11152 tienen como oficinas_id el Id 213 que corresponde al padre: S11150. Tambien se deduce que todos los oficinas_id iguales seran hermanos.
Bueno quien pueda darme alguna idea de cómo se comienza todo esto.
Mis dudas (entre muchas) serian como voy desde la tabla fisica a alguna estructura que me permita visualizar el arbol y luego dibujarlo. Para ir adelantando ya me hice funciones que pueden dibujar cada nodo con alguna caracteristica, como por ejemplo si es un nodo Hijo, o si es hijo y padre a su vez o si es hijo con hermano a derecha o a izquierda. Y ademas tengo acotado como seria mi tabulado para hacer cada grafico.
Bueno desde ya muchas gracias, esperando alguna noticia favorable.
Saludos Alejandro Coloma, mail: [email protected]
o [email protected]
Esto lo desarrollo con Delphi, la tabla es de Oracle, pero podria ser alguna otra base de datos.
ntento mostrar el grafico de lo que seria el resultado final deseado, pero no me permite.
|