DEV AUXILIARES/CONSTRAINT
Descripción
Los auxiliares de tipo CONSTRAINT permiten definir constricciones (o limitaciones) a los valores posibles de un campo, con esto tenemos una capa más de validación en el ingreso de datos del sistema.
Las constricciones pueden ser de 3 tipos:
- ENUMERACION define una lista de valores posibles.
- FILTRO define un filtro que se aplica sobre alguna tabla.
- LIMITE define límites con un mínimo y un máximo.
Este tipo de auxiliar aplica a:
Modo de operación
Estos auxiliares son manejados directamente por la aplicación.
Etiquetas
Las etiquetas en uso son:
<COMANDO>
Define el comando a ejecutar, cierra con </COMANDO>.
<MENSAJE>
Define un mensaje a mostrar al usuario si el valor ingresado no es válido, cierra con </MENSAJE>.
<TAG SQL>
Indica que la constricción se resuelve ejecutando el SQL incluido dentro de <COMANDO> y </COMANDO>.
<TAG TIPO>
Indica el tipo de constricción:
- ENUMERACION define una lista de valores posibles.
- FILTRO define un filtro que se aplica sobre alguna tabla.
- LIMITE define límites con un mínimo y un máximo.
Ejemplos
Ejemplo de una constricción por ENUMERACION
Esta constricción aplica sobre la clase REMITOS MATERIA PRIMA/DETALLE, campo Articulo y solo permite registrar los artículos que estén definidos en la tabla REMITOS MATERIA PRIMA/VALUACION.
<TAG TIPO>ENUMERACION <TAG SQL> <MENSAJE> </MENSAJE> <COMANDO> SELECT DISTINCT RPDTL_VALUACION.Articulo , Descripcion = ART.FDESCRIPCION FROM RPDTL_VALUACION , ART WHERE ART.FCODIGO = RPDTL_VALUACION.Articulo ORDER BY RPDTL_VALUACION.Articulo </COMANDO>
- La etiqueta <TAG TIPO>ENUMERACION indica que la constricción es de tipo enumeración por lo que debería retornar una lista de valores posibles.
- La etiqueta <TAG SQL> que debe ejecutarse el comando para obtener la lista de valores posibles.
- Los comandos entre las etiquetas <COMANDO> y /<COMANDO> retornan los artículos que existen en REMITOS MATERIA PRIMA/VALUACION.
Debe notarse que:
- Cuando un campo tiene asociado un auxiliar de tipo constraint y enumeración, el control de edición cambia a una combobox.
Advertencia:
- Cuando un campo tiene asociado un CONSTRAINT de tipo ENUMERACION, el control de edición cambia a un combobox automáticamente en la aplicación.