Prueba Velneo Gratis

Te ofrecemos todo el poder de Velneo durante 1 mes para desarrollar la aplicación que tu empresa necesita.

Saber más
Thank you! Check your email for confirmation.

¿Cómo funciona la subindexación? (2ª Parte)

En la primera parte de este artículo vimos la explicación teórica de la subindexación. Ahora en esta segunda parte vamos a ver lo sencillo que es ponerla en práctica en nuestras aplicaciones.Continuando con el ejemplo de empresas-personas, en la primera parte dejamos preparadas las tablas y sus índices, ahora vamos a ver como configurar los objetos y controles de nuestra interfaz para poner en práctica la subindexación. Recordemos el objetivo que queremos conseguir:

En este formulario el usuario debe seleccionar una persona:

  1. Si ya está seleccionada la empresa, sólo debería permitir al usuario seleccionar una persona de esa empresa.
  2. Si no estuviese seleccionada ninguna empresa debería permitir seleccionar cualquier persona.

Habíamos visto en la primera parte que se habían creado dos índices en la tabla personas por empresa y código y, el que vamos a utilizar ahora para la subindexación, por empresa y nombre.

Para el ejemplo utilizaremos una tabla de notas que contiene enlaces a la persona a la que se le asigna la nota y también a la empresa a la que pertenece la persona.

En el campo empresa le configuramos como contenido inicial que asuma la empresa de la persona.

 

De esta forma al seleccionar una persona se asumirá el valor de su empresa, por lo que tendríamos resuelto el caso de que no grabemos la empresa (2º caso). En el siguiente formulario vemos el formulario de grabación donde, al no seleccionar una empresa, el control de edición de la persona nos permitiría grabar cualquier persona de cualquier empresa, rellenándose automáticamente el campo empresa.

Ahora vamos a ver cómo se configura la resolución del primer caso, si el usuario graba una empresa, sólo debe permitirme grabar personas de dicha empresa. Lo primero que tenemos que hacer es definir en el control de edición alfabética de la persona en el formulario su objeto subindexador.

 

Para definir el subobjeto subindexador tan sólo hay que indicar el índice por el que se realizará. En este caso como el campo del formulario muestra el nombre de la persona, necesitamos un índice que tenga 2 partes, la primera la empresa que debemos resolver y la segunda el nombre de la persona. De esta forma el control del formulario será capaz de mostrar los nombres de las personas de la empresa resuelta. En la propiedad de resolución de partes del índice le resolvemos la primera parte del índice, en este caso la empresa, con el campo empresa de la tabla de notas, es decir, el campo de empresa situado previamente a la persona en el formulario.

El dato más destacable es la condición de activo. En este caso nos interesa indicar que el subindexador sólo esté activo si el campo empresa de la tabla de notas tiene un valor asignado. De esta forma conseguimos que:

  1. Si la empresa tiene valor el control de edición sólo se mueva a través de las personas de la empresa.
  2. Si la empresa está vacía el control de edición se moverá a través de todas las personas de todas las empresas.

Todavía nos queda por ver una última opción que podemos incorporar en nuestro formulario. Un localizador de personas subindexado. Eso lo veremos en la tercera y última parte de esta serie de artículos.

 

Regístrate ahora y nuestro equipo se pondrá en contacto muy pronto