IniArmaCondGrilla - Armar Condición de la Grilla

INTRODUCCIÓN

Este servicio construye dinámicamente condiciones de filtro SQL para reportes, en base a los
valores seleccionados en una grilla.

Permite filtrar por uno o varios campos segun la cantidad de columnas definidas, y arma la
condición final en función de los valores obtenidos.

INFORMACIÓN GENERAL

Nombre del servicio: IniArmarCondGrilla

Clase: IniArmarCondGrillaBean

JNDI: nodum/servicios/nucleo/ini/IniArmarCondGrilla

Tipo: Inicialización

Módulo: General

Repetitivo: Si

PARÁMETROS DE ENTRADA

 

  

 

 

Nota: El número de columnas definidas en el parámetro Campo(s) debe coincidir con la estructura
del Control(es) recibido.

FORMATO DE SALIDA

La matriz de salida tiene una sola fila y columna, cuyo valor es un String con la condición SQL
generada.

LÓGICA DEL SERVICIO

1. El servicio analiza si hay un único campo (Campo(s] o múltiples.
2. En caso de un solo campo, genera una condición del tipo: tabla.campo IN (valor1, valor2,....)

3. En caso de múltiples campos, arma una condición con OR y AND combinados, por
ejemplo: (tabla.campo1 = val1 AND tabla.campo2 = val2) OR (tabla.campo1 = val3 AND
tabla.campo2 = val4)

4. Los valores provienen del Control(es) de entrada, que debe ser una grilla de N filas, con
uno o más campos separados por ;.

EJEMPLO

Ejemplo 1- Un solo campo

Entrada:

  • Control(es): '1';'2','3'
  • Tabla: ct_monedas
  • Campo(s): cod_moneda

Salida:

ct_monedas.cod_moneda IN ('1', '2','3')

Ejemplo 2 - Múltiples campos

Entrada

  • Control(es):'1;2024';2;2025'
  • Tabla: sa_estados
  • Campo(s): cod_estado;anio

Salida:

(sa_estados.cod_estado = '1' AND sa_estados.anio = '2024')

OR (sa_estados.cod_estado = '2' AND sa_estados.anio = '2025']

 

 

 

Arma la condición de filtro para un reporte a partir de una grilla. Permite configurar el tipo de dato de los controles de la grilla y la cantidad de columnas que se utilizan como filtro en la grilla. TAGS: inicializar, armar, construir, condiciones, grillas, reporte.

PALABRAS CLAVES


Descargar o Imprimir


¿TE SIRVIÓ ESTE ARTÍCULO?