Diferencia entre revisiones de «DEV AUXILIARES/SELECCION CRITERIOS»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Línea 9: Línea 9:
[[Archivo:20250401 1644 CONSULTA PARA SELECCION CRITERIOS.png|miniaturadeimagen|no|Consulta de saldos contables.]]
[[Archivo:20250401 1644 CONSULTA PARA SELECCION CRITERIOS.png|miniaturadeimagen|no|Consulta de saldos contables.]]


===Criterios de la consulta===
Sus criterios son:
Sus criterios son:
{| class="wikitable"
{| class="wikitable"
Línea 28: Línea 29:
El auxiliar descripto en este artículo resuelve esa situación permitiendo definir una sentencia SQL que traiga una lista de registros, por ejemplo, lista de sectores de la empresa. Y posteriormente marcarlos para indicar cuáles hemos seleccionado. Esta funcionalidad se completa modificando el SQL de la consulta para que permita usar este nuevo argumento.
El auxiliar descripto en este artículo resuelve esa situación permitiendo definir una sentencia SQL que traiga una lista de registros, por ejemplo, lista de sectores de la empresa. Y posteriormente marcarlos para indicar cuáles hemos seleccionado. Esta funcionalidad se completa modificando el SQL de la consulta para que permita usar este nuevo argumento.


===Ingreso de criterios===
===Ingreso de criterios adicionales===
Al definir un auxiliar de este tipo veremos una opción en el menú llamada "Definir criterios" como se ve justo abajo:
Al definir un auxiliar de este tipo veremos una opción en el menú llamada "Definir criterios" como se ve justo abajo:
[[Archivo:20250401 1646 CONSULTA PARA SELECCION CRITERIOS OPCION MENU.png|miniaturadeimagen|no|Opción para definir criterios.]]
[[Archivo:20250401 1646 CONSULTA PARA SELECCION CRITERIOS OPCION MENU.png|miniaturadeimagen|no|Opción para definir criterios.]]
Línea 34: Línea 35:
Al seleccionar esa opción se abrirá una pantalla como la de abajo en la que podemos marcar qué sectores queremos consultar:
Al seleccionar esa opción se abrirá una pantalla como la de abajo en la que podemos marcar qué sectores queremos consultar:
[[Archivo:20250401 1647 DEFINIR CRITERIOS.png|miniaturadeimagen|no|Definir criterios.]]
[[Archivo:20250401 1647 DEFINIR CRITERIOS.png|miniaturadeimagen|no|Definir criterios.]]


<pre>
<pre>

Revisión del 14:58 3 abr 2025

Descripción

Los auxiliares de tipo SELECCION_CRITERIOS permiten definir criterios adicionales a las Consultas.

Modo de operación

Más fácil explicar la funcionalidad de este auxiliar a través de un ejemplo usando la consulta CUENTA_SALDOS_Consulta (ver Cuentas contables, saldos por rango de cuentas (CUENTA_SALDOS_Consulta)) que permite consultar los saldos de cuentas contables:

Consulta de saldos contables.

Criterios de la consulta

Sus criterios son:

Columna Campo físico Campo lógico Atributo Descripción Etiquetas Observaciones
1 CuentaDesde CuentaDesde CUENTA Cuentas contables, saldos por rango de cuentas REQ Cuenta inicial.
2 CuentaHasta CuentaHasta CUENTA Cuentas contables, saldos por rango de cuentas REQ Cuenta final.
3 FechaDesde FechaDesde DATETIME Fecha y hora. REQ Fecha para el saldo inicial.
4 FechaHasta FechaHasta DATETIME Fecha y hora. REQ Fecha para el saldo final.

Si necesitáramos filtrar por sectores eligiendo uno o más de ellos no podríamos hacerlo ya que la definición de argumentos de consultas (ver Consultas, argumentos (prxconsultasA)) no permite definir una lista variable para el mismo argumento.

El auxiliar descripto en este artículo resuelve esa situación permitiendo definir una sentencia SQL que traiga una lista de registros, por ejemplo, lista de sectores de la empresa. Y posteriormente marcarlos para indicar cuáles hemos seleccionado. Esta funcionalidad se completa modificando el SQL de la consulta para que permita usar este nuevo argumento.

Ingreso de criterios adicionales

Al definir un auxiliar de este tipo veremos una opción en el menú llamada "Definir criterios" como se ve justo abajo:

Opción para definir criterios.

Al seleccionar esa opción se abrirá una pantalla como la de abajo en la que podemos marcar qué sectores queremos consultar:

Definir criterios.





SELECT * FROM pCONSULTA_CRITERIOS WHERE FGUID = '{1A2F93C7-0490-4A92-B436-5CE2CBD1D946}'


Por defecto, el generador de reportes embebido en la aplicación accede a los datos de la tabla de la pantalla que se está consultando. Pero en ocasiones se requieren más datos que los disponibles en esa estructura por lo que podemos definir un auxiliar que proporciona una sentencia SQL que traerá el resultado que queremos usar de base para el reporte.

Este tipo de auxiliar aplica a:

Modo de operación

Ante una solitud de impresión el sistema automáticamente verifica la existencia de un auxiliar de este tipo.

No se requiere ninguna participación del usuario.

Etiquetas

Este auxiliar no define ninguna etiqueta, directamente registramos el comando SQL.

Ejemplo

Este auxiliar xxxxxxxxxxx

<COMANDO>
SELECT
FCLAVE = '[' + SECTOR.FCODIGO + ']' + '[' + SECTOR.FDESCRIPCION + ']'

, FCHECKED = CASE
WHEN EXISTS (SELECT * FROM pCONSULTA_CRITERIOS WHERE pCONSULTA_CRITERIOS.FGUID = FBN(GUID) AND pCONSULTA_CRITERIOS.FCLAVE = '[' + SECTOR.FCODIGO + ']' + '[' + SECTOR.FDESCRIPCION + ']') THEN CAST(1 AS BIT)
ELSE CAST(0 AS BIT)
END

FROM SECTOR
ORDER BY 1
</COMANDO>