Consultas de selección por atributo

<< Click to Display Table of Contents >>

Navigation:  Proyectos >

Consultas de selección por atributo

Esta función permite buscar y seleccionar elementos de una capa utilizando los valores de sus atributos o utilizando una base de datos vinculada a la capa. Los administradores crean las consultas y sus formularios asociados en JMap Admin. Los usuarios de las aplicaciones JMap utilizan luego esos formularios para ingresar los valores de los atributos y efectuar las búsquedas. Todos los elementos cuyos valores de atributos corresponden a los valores ingresados son seleccionados y presentados en el explorador de elementos.

Puede acceder a la sección de configuración de las consultas presionando Consultas desde la sección Proyectos.

Crear una nueva consulta de selección por atributos

Para crear una nueva consulta presione Crear consulta en la sección Consultas. Los parámetros varían en función del tipo de consulta seleccionado.

Consulta de selección por atributos

Título

Ingrese un título para la consulta. Los usuarios verán ese título en la lista de consultas.

Capa

Seleccione la capa en la que se ejecutará la consulta. El campo de búsqueda facilita la selección de la capa.

Escala máxima

Ingrese la escala máxima para la visualización de los resultados en el mapa. Esto es útil para evitar los zooms demasiado detallados sobre los resultados.

Nro. max. de valores devueltos

Ingrese el número máximo de elementos que pueden ser devueltos por la consulta. Ésta no se ejecutará si el tamaño del resultado es superior a este límite. Este parámetro evita la ejecución de consultas demasiado voluminosas que podrían lentificar el sistema.

Modelos de consultas

Básico: En este tipo de consulta la búsqueda se efectúa únicamente en los atributos de la capa. Es el tipo más simple de consulta.

Base de datos externa: En este tipo de consulta la búsqueda se efectúa en una base de datos externa que posee un campo que la vincula a un atributo de la capa. Este tipo de consulta es más complejo para configurar pero ofrece más flexibilidad para las búsquedas.

Consultas en la capa

Consulta básica

WHERE

Cláusula WHERE de la expresión SQL que se ejecuta para realizar la búsqueda. Típicamente esta cláusula contiene parámetros numerados ($param1, $param2, etc.) que serán reemplazados por los valores ingresados por el usuario en el formulario.

Ejemplos:

COUNTRY='$param1'

Selecciona los elementos de la capa que tienen el valor del atributo COUNTRY igual al valor ingresado por el usuario. El valor del atributo debe corresponder perfectamente al valor ingresado ($param1).

lower(COUNTRY) like lower('$param1%')

Selecciona los elementos de la capa que tienen el valor del atributo COUNTRY similar al valor ingresado por el usuario. El valor del atributo debe comenzar por el valor ingresado ($param1). Gracias al operador lower la búsqueda no es sensible a las mayúsculas y minúsculas.

POP2000>=$param1 and POP2000<$param2

Selecciona los elementos de la capa que tienen el valor del atributo POP2000 dentro del rango definido por los dos valores ingresados ($param1 y $param2).

Diseño de formulario

Presione este botón para configurar el formulario de la consulta. La sección Formularios ofrece más detalles sobre el tema.

Consultas externas

Este tipo de consultas se utiliza cuando se debe hacer una búsqueda en datos contenidos en una base de datos externa. La base de datos externa debe tener un campo que permita vincularla con un atributo de la capa. En primer lugar se ejecuta una consulta SQL de tipo SELECT en la base de datos externa y los valores devueltos por la misma son luego asociados a los elementos de la capa utilizando el campo de vinculación.

Consulta en base de datos externa

Bases de datos

Seleccione la base de datos en la que desea efectuar la búsqueda.

Expresión SQL

Ingrese la expresión SQL que será ejecutada en la base de datos para buscar los elementos.

Ejemplo:

select * from cities where CITY_LANGUAGE='$param1'

Búsqueda en la tabla cities de la base de datos seleccionada. Devuelve los registros cuyo valor del campo CITY_LANGUAGE es igual al valor ingresado por el usuario ($param1).

Atributo de la capa

Especifique, entre los atributos de la capa, el atributo que servirá para establecer el vínculo con la base de datos.

Campo

Seleccione, entre los campos devueltos por la consulta SQL, el campo que servirá para establecer el vínculo con la capa.

Diseño de formulario

Presione este botón para configurar el formulario de la consulta. La sección Formularios ofrece más detalles sobre el tema.

Parámetros obligatorios y opcionales

Aunque en el diseño de los formularios de búsqueda los campos están marcados como obligatorios u opcionales, la cláusula WHERE de la expresión de consulta debe ser ajustada para soportar esta opción. Para ello, las partes de la consulta que estén asociadas a parámetros opcionales deben estar incluidas entre llaves ( { } ).

Ejemplo de cláusula WHERE:

CITY = '$param1' and { COUNTRY = '$param2' }

Este ejemplo efectúa la búsqueda de las ciudades cuyo valor para el atributo CITY es igual al valor del parámetro 1 ingresado por el usuario ($param1) y que opcionalmente tienen el valor del atributo COUNTRY igual al valor del parámetro 2 ingresado por el usuario ($param2). Si el parámetro 2 no se ingresa, todo el bloque { COUNTRY = '$param2' } es eliminado de la consulta, así como el operador AND que se vuelve huérfano. Atención: el administrador debe obligatoriamente definir $param2 como opcional en el diseño del formulario. La sección Formularios ofrece más detalles sobre este tema.

Valores múltiples para un mismo parámetro

Se puede permitir el ingreso de valores múltiples en los formularios, en un campo de tipo Lista (opciones múltiples). Los valores se separan mediante el carácter delimitador ; (punto y coma) . Esta opción puede ser activada en la cláusula WHERE de la consulta. La sintaxis es la siguiente:

$multiple{true|false} {$delimiter{;}}

Ejemplo:

CITY = '$param1{$multiple{true} $delimiter{;}}'

Selecciona las ciudades cuyo valor del atributo CITY es igual a uno de los valores ingresados en el parámetro 1. Los valores están separados por punto y comas (;).

Gestión de las consultas de selección por atributos

Los administradores pueden modificar las consultas por atributos. A partir de JMap Dakar, cuando las consultas se modifican no es necesario desplegar nuevamente las aplicaciones que publican el proyecto, dado que los cambios se transmiten de manera directa.

Supresión de las consultas de selección por atributos

La supresión de una consulta de selección por atributos suprime definitivamente la consulta y el formulario que está asociado a la misma. Para suprimir una consulta, selecciónela en la lista y presione Suprimir.

Organización de las consultas de selección por atributos

Las consultas de selección por atributos pueden ser organizadas en grupos, lo que resulta especialmente útil en los proyectos que implican un número elevado de consultas.

Para crear un nuevo grupo, presione el botón Crear un grupo. Para modificar el orden de los grupos, presione Modificar y seleccione Reordenar grupos. La ventana que se abre permite deslizar y depositar los grupos en la posición deseada.

Para renombrar un grupo, presione el icono . Para suprimir un grupo, selecciónelo en la lista y presione Suprimir.