Blog‎ > ‎

vBASE: Entidades

publicado a la‎(s)‎ 1 mar. 2011 7:55 por v TODO   [ actualizado el 1 mar. 2011 8:04 ]

En la nueva versión 2.0 de vBase, hemos rediseñado totalmente esta tabla. Ya en su día fue un debate hasta última hora, y se optó por la solución de consenso de una sola tabla, descartando la más flexible y lógica (3 tablas) por primar la usabilidad. Error: lo mas importante siempre debe ser un buen diseño, basado en un análisis de las relaciones. Luego a la hora de crear los objetos que la manejen, ya se buscarán métodos que faciliten su uso, si fuera necesario.

El caso es que todos, por separado, a la hora de explotar la tabla nos dimos cuenta que se debería rediseñar. Ahora con este diseño la flexibilidad es total, también la compatibilidad con los contactos de otros dispositivos como los móviles.

El diseño queda ahora así:
 
  • Entidades: Tabla donde sólo tenemos los datos propios de la entidad, nombre, C.I.F., idioma, foto, etc.
  • Direcciones: Al crear una tabla de direcciones, ya podremos crear tantas como necesitemos para una sola entidad. En esta tabla se encuentra solo la información de la dirección, no sus teléfonos que estarán en la siguiente tabla
  • Contactos: En esta tabla tendremos los teléfonos, correos electrónicos, fax y cualquier otro medio de contacto con la entidad. No tendremos límites, y podremos relacionarlos también con una dirección.
 

Creando entidades

Para facilitar la creación de una entidad, hemos diseñado un asistente, de forma que en una primera pantalla se cree la entidad y la dirección principal (si los datos de la dirección se dejan vacíos, solo creará la entidad), pasando después a un bucle en el que se piden todos los teléfonos/e-mail que se quieran añadir.

Esta es la pantalla principal:

 
 

Contactos

Los contactos se pueden crear tanto desde la entidad como de la dirección. También se puede desde una entidad “arrastrar” un contacto sobre una dirección para que automáticamente quede asociado a esta.

A la hora del diseño de la tabla de contactos, hemos tenido en cuenta su explotación desde otros módulos como un gestor de correo. Para ello tenemos una tabla estática que nos indica la clase (teléfono, fax, e-mail, etc.) y un índice para poder buscar por entidad y clase de contacto. De esta forma nos será sencillo localizar un correo electrónico de una entidad.

 

Exprimiendo vBase

Como esta Velneo Open App va a ser usada para múltiples fines, no hemos querido quedarnos cortos, y hemos añadido un campo Referencia, con un índice, a las tres tablas (Entidades, Direcciones y Contactos). La finalidad de este campo indexado es poder hacer estas tablas históricas de una de nuestra aplicación. Por ejemplo:

Una tabla de obras, en la que queremos tener asociados contactos. Al crear el contacto guardamos en ese campo, por ejemplo “OBRA” + #ID. Ahora cargando por ese índice tendremos todos los contactos de la obra en curso.

Lo mismo podemos hacer con las direcciones.

 

Otros cambios

La tabla Categorías (CAT), la hemos renombrado a Tipo de entidad (ENT_TIP), esto es  fruto de la experiencia con los usuarios, pues no asociaban el concepto “Cliente” con “categoría”, y les era mas fácil hacerlo con la definición “tipo de entidad”. Como estamos en el inicio hemos decidido no acarrear con esta definición el resto de nuestros días

Cambio de versión

Como veis, esta versión tiene muchos cambios con respecto a la anterior, por lo que hemos creado un proceso para no perder los datos que tengamos en la versión anterior. Este proceso se llama CAMBIO_VERSION y se encuentra en el proyecto de datos Entidades. No se ejecuta automáticamente, por  lo que los que tengáis datos antiguos debéis hacerlo desde Velneo vDataClient V7, o incluyéndolo en una opción de menú. Tampoco hemos eliminado los campos de la tabla entidades que han pasado a las otras dos tablas (si no hubiese sido un poco difícil recuperaros esos datos, por lo que sacaremos en breve un versión 2.1 quitando todos los datos sobrantes.

Puedes descargar vBase, al igual que el resto de plantillas empresariales en el catálogo de Velneo Open Apps.