Archive for May, 2005

El blog de Tony Sevilla

Thursday, May 12th, 2005

Tony Sevilla acaba de estrenar su blog. Por lo que me cuenta va a ser una especie de diario de las cosas que le pasan en su trabajo de informatico por su cuenta.

Suerte Tony con este proyecto.

TreeView

Wednesday, May 11th, 2005

Interesante solución la que presenta Jose Luis Sanchez Navarro en Avemundi para presentar un treeview a partir de datos almacenados en tablas.

Permidme presentar otra, algo más elaborada, que cumple con las reglas de la normalización.

Se trata de tener una tabla para cada nivel del árbol, así, para el caso presentado por Jose Luis, serían necesarias 5 tablas: Nivel1, Nivel2, Nivel3, Nivel4 y Nivel5 las llamaremos.

La tabla Nivel1, contendrá codigo y descripción, así CN1, DN1;

la tabla Nivel2, contendrá código del nivel 1, contador dentro del nivel 2 y descripción, así, CN1, CN2, DN2. La clave de esta tabla será CN1+CN2;

la tabla Nivel3, contendrá código del nivel 1, contador dentro del nivel 2, contador dentro del nivel 3 y descripción, así, CN1, CN2, CN3, DN3. La clave de esta tabla será CN1+CN2+CN3;

la tabla Nivel4, contendrá código del nivel 1, contador dentro del nivel 2, contador dentro del nivel 3, contador dentro del nivel 4 y descripción, así, CN1, CN2, CN3, CN4, DN4. La clave de esta tabla será CN1+CN2+CN3+CN4;

la tabla Nivel5, contendrá código del nivel 1, contador dentro del nivel 2, contador dentro del nivel 3, contador dentro del nivel 4, contador dentro del nivel 5 y descripción, así, CN1, CN2, CN3, CN4, CN5, DN5. La clave de esta tabla será CN1+CN2+CN3+CN4+CN5;

La forma de recorrer las tablas para crear el treeview será la sigiente:

Abrir todas las tablas.
Situarse en el primer registro de la tabla Nivel1.
Mientras no sea fin de fichero Nivel1

…..Añadir descripción DN1 al árbol
…..Establecer Scope en Nivel2 por CN1
…..Situarse en primer registro de Nivel2

…..Mientras no sea fin de fichero Nivel2

……….Añadir decripcion DN2 al arbol
……….Establecer Scope en Nivel3 por CN1 y CN2
……….Situarse en primer registro de Nivel3

……….Mientras no sea fin de fichero Nivel3

……………Añadir decripcion DN3 al arbol
……………Establecer Scope en Nivel4 por CN1, CN2 y CN3
……………Situarse en primer registro de Nivel4
……………Mientras no sea fin de fichero Nivel4

………………..Añadir decripcion DN4 al arbol

………………..Establecer Scope en Nivel5 por CN1, CN2, CN3 y CN4
………………..Situarse en primer registro de Nivel5

………………..Mientras no sea fin de fichero Nivel5

…………………….Añadir decripcion DN5 al arbol
…………………….Avanzar siguiente registro Nivel5

………………..Fin mientras Nivel5

………………..Avanzar siguiente registro Nivel4

……………Fin mientras Nivel4

……………Avanzar siguiente registro Nivel3

……….Fin mientras Nivel3

……….Avanzar siguiente registro Nivel2

…..Fin mientras Nivel2

…..Avanzar siguiente registro Nivel1

Fin mientras Nivel1

Cerrar tablas

A simple vista puede parecer un galimatías tremendo, pero con el tiempo esta solución ahorra mucho espacio en disco al no repetir las descripciones de todos los niveles para cada registro (aunque sea con espacios en blanco)y cumple la normalización de tablas en bases de datos (por si alguien decide en un futuro hacer estas cosas con bases de datos).

Siempre se puede trabajar más el sistema de identificación de registros para que permita insertar entre dos existentes, ordenar cada rama alfabéticamente, etc.

Desilusión

Tuesday, May 10th, 2005

Esta mañana me he llevado una gran desilusión proviniente de una persona a quien consideraba amigo.

El caso es el siguiente, después de prestarle mi ayuda de forma incondicional siempre que me la ha demandado durante mas de tres años, me vi en la necesidad de solicitar su colaboración en un instalación que tengo que hacer a un cliente nuevo, el cual me ha pedido un programa para su negocio, un area de soft que no toco, y sabiendo que este amigo tenía una solución le pedi ayuda.

Después de casi un mes contandome las novedades que iba a implementar en el nuevo software y “venderme la moto”, esta mañana me dice que ha decidido no distribuirlo y que me busque la vida y apañe a mi cliente con cualquier solución barata de las que hay por ahí.

En estos momentos me estoy planteando seriamente si atenderle la proxima vez que se atranque y demande mi ayuda, o si decididamente ignorarle por completo y olvidar que un dia fuimos amigos.

El Avisador

Tuesday, May 10th, 2005

Un amigo de Madrid, Joaquin, acaba de estrenar “El Avisador”, un sitio donde podrás seleccionar los feeds de noticias que más te interesen y que serán enviados a tu buzón de correo sin necesidad de pelearte con la configuración de programas lectores de feeds ni tener que navegar por las páginas que te interesan en busca de noticias.

Personalmente creo que la idea de Joaquin ha sido genial por su sencillez. Os animo a todos a darle un vistazo a “El Avisador”.