Diferencia entre revisiones de «DEV AUXILIARES/CONSTRAINT»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
(Página creada con «=Descripción= Category:MANUAL/DESARROLLADOR Category:DEV AUXILIARES 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…»)
 
Línea 64: Línea 64:
*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 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 '''<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]].
*Los comandos entre las etiquetas '''<COMANDO>''' y '''/<COMANDO>''' retornan los artículos que existen en [[REMITOS MATERIA PRIMA/VALUACION]].



Revisión del 20:16 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>.

<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.