Concepto Validador en Tipos de Novedad

¿Para qué sirve?

Es un proceso para configurar y utilizar un Stored Procedure (SP) para la validación de novedades en el sistema.

¿Cómo se Usa?

El flujo general es:

  1. Se define un SP con las validaciones necesarias.
  2. El concepto validador hace referencia al SP.
  3. Se asocia el concepto validador al tipo de novedad correspondiente.
  4. Al cargar una novedad duplicada, el sistema muestra un mensaje de validación.
1. Stored Procedure (SP)

El sistema cuenta con un SP encargado de realizar la validación de las novedades.

  • Este SP puede adaptarse a medida según los criterios de validación que defina la empresa.

Ejemplo de lógica incluida en el SP:

IF (SELECT COUNT(*)
FROM BSParteTrabajoItem WITH (NOLOCK)
INNER JOIN BSPersona WITH (NOLOCK) ON BSParteTrabajoItem.PersonaID = BSPersona.PersonaID
INNER JOIN BSTipoNovedad WITH (NOLOCK) ON BSParteTrabajoItem.TipoNovedadID = BSTipoNovedad.TipoNovedadID
WHERE BSPersona.Codigo = @Codigo
AND BSTipoNovedad.Codigo = @Novedad
AND BSParteTrabajoItem.Fecha = @Fecha) >= 1
select 0
else
select 1

NOTA: En este ejemplo se valida que no se cargue una novedad con misma fecha para el mismo tipo de novedad.

2. Concepto Validador

El concepto validador es el encargado de llamar al SP para ejecutar la validación.

En la siguiente imagen se puede observar la configuración
La sintaxis es:
Fecha = NOVEDAD.Fecha;
return Funcion.RunSP(“VALIDACION”, EMPLEADO.Codigo, Fecha,“FINN_LCT_7007”);
Este concepto se configura para vincularse al tipo de novedad.

3. Configuración en Tipo de Novedad

Una vez creado el concepto validador, se debe asignar en el tipo de novedad que se desee controlar.

4. Ejemplo de Mensaje de Validación

Cuando se intenta cargar una novedad que incumple la validación (por ejemplo, una duplicada), el sistema muestra un mensaje de error.

  1. Resumen del Flujo
  2. SP: contiene la lógica de validación en SQL.
  3. Concepto Validador: invoca al SP.
  4. Configuración en Novedad: se asigna el concepto validador al tipo de novedad.
  5. Carga de Novedad: si no cumple la validación, se muestra un mensaje de error.