Sistema de Gestión de Negocios "Hexa"

Base de datos de conocimiento.

usuario usuariows del grupo no autorizado

La tabla Atributo

La filosofía de Hexa hace que la organización este organizada en la base de datos de forma que sea sencillo localizarla y crear informes y estadísticas. Así, la mayor parte de las entidades se identifican claramente con el nombre de una tabla: "Cliente", "Pedido", "Asiento" o "Amortizacion". Además los campos de cada tabla tienen a su vez nombres claros que casi siempre se pueden utilizar directamente como etiquetas o encabezados: "Nombre", "BaseBruta", "Telefono", "Cantidad", etc.

Casi todas las necesidades existentes están disponibles como tablas o campos. En verticalizaciones específicas se puede crear nuevas tablas y campos. Pero a veces, es necesario guardar un atributo sencillo y no se desea llegar al extremo de modificar la base de datos con las complicaciones que supone a la hora de actualizar a nuevas versiones.

Para ello, Hexa dispone de la tabla "Atributo" que permite aplicar el modelo "EAV" de Entidad-Atributo-Valor. Según este modelo, se decriben entidades cuyos atributos pueden ser muy numerosos y que se aplican relativamente poco.

La tabla atributo tiene los siguientes campos:

  • Tabla. Es el nombre de la tabla a la que afecta el atributo. Por ejemplo: "Cliente"
  • Registro. Identifica el registro de la tabla al que corresponde el atributo. Por ejemplo: "3456"
  • Nombre. Nombre del atributo. Por ejemplo: "ColorOjos"
  • Valor. Valor del atributo. Por ejemplo "Verde"

Para facilitar el uso de atributos, la clase "BaseDeDatos" dispone de dos métodos que permiten registrar y recuperar información de la tabla Atributo:

  • Function Atr(Tabla As String, Registro As String, Nombre As String) As String
    Recupera un atributo correspondiente a un registro de una tabla. En el ejemplo anterior: Atr ("Cliente", "3456", "ColorOjos") devuelve el valor del color de ojos del cliente 3456
  • Function AtrS(Tabla As String, Registro As String, Nombre As String, Valor As String) Guarda un atributo correspondiente a un registro de una tabla. En el ejemplo anterior: AtrS ("Cliente", "3456", "ColorOjos", "Azul") modifica el valor del color de ojos del cliente 3456 a "Azul"

Volver a la búsqueda anterior