Mostrando entradas con la etiqueta search form. Mostrar todas las entradas
Mostrando entradas con la etiqueta search form. Mostrar todas las entradas

jueves, 24 de julio de 2014

Crear formulario búsqueda en 10g. Parte 3. Creando la página

Descripción: En este artículo vamos mostrar cómo crear la página con el formulario de búsqueda (search form) en 10g a partir del view object y bind variables creados en los artículos anteriores.

Puedes descargar el ejemplo completo en este enlace: Descarga del ejemplo (10g)

Para incluir el formulario de bússqueda debemos ir a Data Controls y seleccionar la View en la cual queremos tanto buscar como mostrar los resultados.

viewobject desde el datacontrol
vista del viewObject en el DataControl




Extendemos el apartado Operations, y desplegamos el que dice ExecuteWithParams.
ExecuteWithParams se aplica a los filtrados realizados a través de parámetros. En este caso, el parámetro es la bind variable que hemos creado a través de la cual enviamos el valor por el que queremos filtrar.

Si arrastramos a la página (vista de código o de diseño), o si arrastramos a la pestaña de estructura (structure tab), podemos ver que se nos muestra un menú contextual en el que se nos pregunta qué queremos crear.
En este caso vamos a crear un ADF Parameter form.

crear ADF parameter form
crear ADF parameter form

Al hacerlo, se nos muestra una ventana para que seleccionemos los parámetros que queremos utilizar en este buscador. También podemos seleccionar qué etiqueta mostrar junto al cuadro de búsqueda así como qué tipo de componente utilizar.
Nota: En ocasiones podemos tener varios criterios de filtrado, y habrá páginas o escenarios en los cuales, un usuario podrá utilizar sólo algunos criterios, y otro usuarios otros distintos. En nuestro ejemplo sólo tenemos un criterio de filtrado por lo que no tenemos esta situación.

configurar campos del buscador
configurar campos del buscador

Una vez creado el formulario de búsqueda, tendremos que añadir el listado de los resultados.
Para ello utilizaremos el componente aftable, que nos permita mostrar en forma de tablas los datos.

Para hacer esto, volvemos a ir a la View en el DataControl, y arrastramos esta vez a la view a la página o al lugar de la estructura donde queremos que se encuentre.
Seleccionamos para esta ocasión que queremos crear un ADF Read-only Table (tabla de sólo lectura).

añadir tabla de resultados de busqueda
añadir tabla con los resultados




Al hacer esto, se nos presenta un cuadro parecido al que vimos para los parámetros del cuadro de búsqueda. Podemos elegir qué columnas de datos mostrar, con qué título en la cabecera y el componente que se utilizará para mostrar los datos en cada celda.

selección de columnas resultados
selección de columnas de resultados




En este ejemplo vamos a mostrar sólo, los campos FirstName y LastName, por lo que eliminamos los otros.

selección de campos y opciones de la tabla (aftable)
selección de campos y opciones de la tabla (aftable)


También seleccionamos que la tabla permita seleccionar elementos, así como ordenar los resultados dependiendo de los valores de cada columna.

Finalmente ejecutamos la tabla y podemos ver cómo queda.
Evidentemente habría que dar unos cuantos retoques para mejorar el aspecto.

vista resultado buscador
vista resultado buscador

Artículos relacionados:
- Crear formulario búsqueda en 10g. Parte 1. ViewObject y Bind Variable
- Crear formulario búsqueda en 10g. Parte 2. bind variable en la consulta



Puedes seguir el blog por Blogger Twitter

miércoles, 23 de julio de 2014

Crear formulario búsqueda en 10g. Parte 2. bind variable en la consulta

Descripción: En este artículo vamos a ver cómo incluir un bind variable en una consulta del viewObject. El ejemplo está hecho para 10g, aunque los conceptos pueden verse también en 11g ().

Puedes descargar el ejemplo completo en este enlace: Descargar ejemplo

En el editor del ViewObject, en apartado SQL Statement, vamos a añadir en el cuadro where, la condición por la que se va a filtrar en el formulario de búsqueda.

Como en el ejemplo vamos a filtrar por el campo first_name, se añadirá la cláusula correspondiente.

incluye bind variable a la query
se añade la condición en la cláusula where



Si observamos, se añade ":" (dos puntos), para indicar en la consulta que estamos con un parámetro(bind variable).

Para comprobar que la consulta es correcta, podemos pulsar el botón Test
Si no pusiéramos los : (dos puntos) en el parámetro, el resultado de la comprobación sería el siguiente:

resultado test query
resultado del Test de la consulta

¿Y si queremos que la consulta no sea sensible a mayúsculas y minúsculas (case sensitive)?

Bastaría con añadir la función UPPER a la cláusula where.

incluye upper consulta
añade UPPER a la consulta


Si volvemos a acomprobar si la consulta ha sido escrita correctamente, podemos pulsar nuevamente el botón Test.

resultado test query
resultado comprobación (test)

En el siguiente artículo veremos, cómo tras modificar la consulta, y añadir el filtro de búsqueda a través del bind variable, creamos la página.

Artículos relacionados:
- Crear formulario de busqueda en 10g. Parte 1. ViewObject y Bind variable.
- Crear formulario de búsqueda en 10g. Parte 3. Creando la página.  
- Ejemplo de formulario de búsqueda 11g (parte 2). Bind Variables

Puedes seguir el blog por Blogger Twitter

martes, 22 de julio de 2014

Crear formulario búsqueda en 10g. Parte 1. ViewObject y Bind Variable

Descripción: En este artículo vamos a ver cómo crear un formulario de búsqueda (search form) en 10g. En esta primera parte veremos cómo se añaden los criterios de búsqueda de la consulta del viewobject con bind variables.
Nota: Si quieres ver la creación del buscador en 11g, puedes hacerlo en el artículo: Ejemplo Formulario de Búsqueda en 11g.

Puedes completo y seguir cada uno de los pasos, así como hacer tus propias pruebas.

Para empezar vamos a añadir al viewObject los criterios por los cuales se va a filtrar los resultados en el formulario de búsqueda que vamos a crear.
Dentro del editor de ViewObject, vamos al apartado Bind Variables.
En este ejemplo vamos a filtrar por el campo FirstName (nombre). 

bind variables editor viewobject
bind variables en el editor del viewObject

El nombre de la variable será p_Nombre. La razón de esta nomenclatura es la de tener una convención de manera que si más adelante se produce un error procedente de los parámetros nos es más fácil detectarlo.

se añade el criterio de búsqueda

Si queremos saber más sobre lo que es un bind variable podemos ver el siguiente artículo del blog SQL Eficiente, se explica con más claridad.
Variables de binding (bind variables)



En el siguiente artículo veremos cómo añadir el bind variable que hemos creado a la consulta.

Fuentes de referencia:

Variables de binding (bind variables) del blog SQL Eficiente


Artículos relacionados
- Crear formulario de busqueda en 10g. Parte 2. Bind variable.
- Crear formulario de búsqueda en 10g. Parte 3. Creando la página. 
- Crear formulario de busqueda en 11g. Consultas y resultados.



Puedes seguir el blog por Blogger Twitter