Diferencia entre revisiones de «DEV AUXILIARES/CONSTRAINT»
Sin resumen de edición |
|||
Línea 20: | Línea 20: | ||
===<COMANDO>=== | ===<COMANDO>=== | ||
Define el comando a ejecutar, cierra con </COMANDO>. | Define el comando a ejecutar, cierra con </COMANDO>. No hay limitaciones en su complejidad o longitud. | ||
===<MENSAJE>=== | ===<MENSAJE>=== |
Revisión del 20:17 3 abr 2025
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>. No hay limitaciones en su complejidad o longitud.
<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.
- La etiqueta <MENSAJE></MENSAJE> se encuentra vacía y podría no existir. El motivo es que en las enumeraciones el ingreso del dato se hace seleccionando de una lista por lo que no hay ocasión de ingresar un dato inválido lo que hace que el mensaje de error sea innecesario.
- 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.