Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-03-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
¿Cómo harías una pantalla de consulta?

.... en episodios anteriores.... este hilo viene a cuento de este otro que ya se estaba desviando un poco de su propuesta inicial.

Hola a todos.

Os propongo un pequeño juego. Me gustaría ver cómo resolvéis el eterno problema de las consultas de las tablas, si es posible con capturas de pantalla. Creo que nos vendrá bien a todos ver las soluciones que se aporten para mejorar nuestras aplicaciones.

¿Os parece?

Saludos
__________________
Be water my friend.
Responder Con Cita
  #2  
Antiguo 30-03-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Quizá es que ya tengo mucha hambre pero, ¿que no es muy ambigua esta pregunta? ¿O a qué te refieres?

// Saludos
Responder Con Cita
  #3  
Antiguo 30-03-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Puedes especificar más lo de "consultas de las tablas"?
Responder Con Cita
  #4  
Antiguo 30-03-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.927
Poder: 26
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Una excelente manera de resolver ese tipo de preguntas es hacer "mokups" o dibujos aproximados.

He usado esta herramienta:

http://www.balsamiq.com/products/mockups

Precisamente porque no son realistas, sino como si fueran hechos a mano. Tambien me compre un tablero de eso blancos (pequeño, un poco mayor que un iPad) para poder rayar rapido y ver que ideas salen.

Otras herramientas:

http://stackoverflow.com/questions/1...face-prototype

Pero concuerdo que hay que aterrizar la pregunta...
__________________
El malabarista.
Responder Con Cita
  #5  
Antiguo 30-03-2012
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Cuando se aclare la pregunta, estoy atento a participar :P
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #6  
Antiguo 31-03-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.609
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
También yo.

Intuyo a qué se refiere newtron, pero mejor que se explique el andaluz.
Responder Con Cita
  #7  
Antiguo 31-03-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
Ok. Disculpad, pensaba que se sobreentendía el tema.

La historia está en que imagino que todos los que desarrollamos aplicaciones tenemos un formulario común para consultar artículos, clientes, proveedores, etc. Lógicamente cada uno habrá resuelto esa papeleta de alguna forma en particular, con más o menos botones, preguntando unas cosas u otras o con más o menos atractivo visual.

Al hilo de lo que debatíamos en el anterior hilo se me ocurre que sería interesante ver de qué manera habéis resuelto el asunto cada uno de vosotros, o sea, poner un ejemplo de como hacéis una consulta de cualquier tabla, si podéis buscar por uno o más campos, si podéis hacer filtros, etc.

¿"Mesentiende" ya?

Por cierto, si que soy andaluz, ¿se me nota en el acento?
__________________
Be water my friend.
Responder Con Cita
  #8  
Antiguo 02-04-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
ummmmmmmmmm.... ¿sois tímidos o no mola mi propuesta?
__________________
Be water my friend.
Responder Con Cita
  #9  
Antiguo 02-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si te refieres a consulta, edición, etc. o sea, una típica "ficha" de clientes, por ejemplo, entonces: lo primero el código, si teclea uno y existe... se presentan sus datos para ser consultado/modificado directamente. Si no existe, pues se da de alta.
Con "pestañas" para cada apartado: datos generales, comerciales, financieros, contactos, sucursales, documentos, etc.
Procurando que sea fácil y rápido moverse entre los campos con las teclas, que no sea obligatorio el uso del ratón.
Responder Con Cita
  #10  
Antiguo 02-04-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Si te refieres a consulta, edición, etc. o sea, una típica "ficha" de clientes, por ejemplo, entonces: lo primero el código, si teclea uno y existe... se presentan sus datos para ser consultado/modificado directamente. Si no existe, pues se da de alta.
Con "pestañas" para cada apartado: datos generales, comerciales, financieros, contactos, sucursales, documentos, etc.
Procurando que sea fácil y rápido moverse entre los campos con las teclas, que no sea obligatorio el uso del ratón.
Si, pero yo me refiero exclusivamente a la parte de consulta de la tabla, o sea, el formulario con el grid o lo que sea para buscar un cliente o un artículo. Lo digo porque es un tema que se puede solucionar u orientar de varias formas y me gustaría ver como lo habéis hecho vosotros.
__________________
Be water my friend.
Responder Con Cita
  #11  
Antiguo 02-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola amigo newtron.

En esos casos suelo usar un formulario de consulta/selección con un cuadro de texto (criterio) un combo de campos sobre el que se hará la búsqueda (Ej: nombre, dirección, teléfono, etc, etc). Un TRadioGroup con las opciones (Ver todo, Comienza, Contiene, Coincide, Termina) el cuál llama a una funcion a la que le envío el nombre de tabla, campo, criterio y el índice del RadioGroup, esta devuelve la consulta SQL armada. Muestro el resultado en un TDBGrid a fin de que seleccione y por último las acciónes que puede efectuar con el registro seleccionado.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #12  
Antiguo 02-04-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
Gracias amigo ecfisa, eso es lo que quería saber, aunque hubiera molado alguna imagen.

Y como para muestra un botón os cuento cómo lo hago yo. Todo esto viene a cuenta del hilo anterior en que comentaba que yo busco la simplicidad absoluta. Cuando llamo a alguna consulta abro un grid con la tabla cargada, esto lo puedo hacer sin ralentizar mucho el proceso por el tipo de base de datos que uso, que puedo abrir las tablas con un clásico ttable en vez de hacer un SELECT *. Saldría algo parecido a esto:



Se puede configurar dónde quieres que active el foco del grid cuando abra la consulta, por defecto normalmente lo hace en el nombre. A partir de ese momento se puede empezar a escribir para buscar la cadena deseada y si el campo está indexado de forma automática se va buscando letra a letra posicionandose en la cadena que se va tecleando, de esta forma:



Bien, esta es una búsqueda simple, de izquierda a derecha. Si queremos hacer un filtro para buscar la cadena en cualquier parte del texto pulsamos Ctrl-Enter y quedaría esto:



Aquí estaríamos filtrando lo que tenga la cadena "80" en cualquier parte de la descripción. Estos filtros se pueden hacer navegando por cualquier campo de la tabla incluyendo la posibilidad de usar operadores > o < en números y fechas. Por ejemplo, si quisieramos buscar los artículos que tuvieran en cualquier parte de la descripción la cadena "80" y tuvieran un PVP0 de más de 1 euro nos iríamos al precio y teclearíamos directamente ">1" y Ctrl-Enter, quedando el grid de esta manera:



También se pueden añadir o quitar campos del grid para que solamente aparezcan los que deseemos o moverlos de sitio dentro del grid, para esto se pica en el botón de las herramientas de la parte superior derecha.



Y ya para rizar un poco el rizo, el resultado de la consulta con sus filtros y campos se puede enviar como informe para imprimirlo, exportarlo, etc. picando en el botón de la impresora.



Básicamente esto era lo que quería transmitir en mi anterior post, simplicidad al máximo y la máxima agilidad de uso. Por otro lado quería ver cómo lo solucionáis vosotros para ver si en algo puedo mejorar lo que ya tengo.

Saludos

Edito: Se me olvidaba, también hay un check que si se marca, cuando se sale de la consulta y vuelve al mantenimiento de donde venga, artículos, clientes, ventas, etc. solamente navega por los registros filtrados. Esto es útil para revisar los albaranes o facturas de un cliente determinado, los artículos de una familia, etc.
__________________
Be water my friend.

Última edición por newtron fecha: 02-04-2012 a las 13:01:42.
Responder Con Cita
  #13  
Antiguo 02-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pues básicamente algo parecido, los filtros con posibilidad de buscar "los que contienen...", "los que empiezan...", etc. y el grid debajo como has puesto tú, ordenable por las diferentes columnas también.
Además acostumbro a añadir un botón de "Nuevo" por si no existe lo que se busca y se quiere dar de alta, este botón enlaza con la ventana/ficha de la tabla que se esté consultando.
También la opción de imprimir.
Además un "retardo" entre pulsaciones de teclas al buscar, para que vaya realizando el select automáticamente con lo tecleado, si antes no ha pulsado "intro".
Aunque suele haber bastante diferencia entre unos programas y otros, básicamente es eso.
Responder Con Cita
  #14  
Antiguo 02-04-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
ummmmmmmmmmmmm.... os veo perros... quiero imágenes ... imáaaaaaaaaaagenesssssssss.
__________________
Be water my friend.
Responder Con Cita
  #15  
Antiguo 02-04-2012
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Ya en un hilo algo viejo muchos habíamos compartido capturas de nuestras pantallas. Pero tu hilo es creo un poco más especifico.

En ése hilo compartí estas misma imágenes.

Esta ventana es la principal para un tipo de registro. En este caso, pacientes. En la parte superior tiene los clásicos botones de CRUD -Crear, Actualizar y Eliminar-. Debajo de ellos y al lado derecho está un campo de búsqueda que le permite al usuario buscar por nombres o correo electrónico del páciente. También permite buscar por el código interno y aplicar filtros sobre los código como este: >15, 50-100 y similares. No ofrece mayor funcionalidad. Solo la básica. El resto de la ventana es la rejilla principal.

Cuando diseñé esta ventana uno de mis objetivos era que fuera simple y que la GUI no consumiera mucho espacio. En esta pantalla, la GUI solo ocupa alrededor del 15% del espacio visual. Una nueva versión de esta ventana en la que estoy trabajando, la GUI solamente ocupa el 7% del espacio visual. El resto es dedicado a los datos, que es lo que más le importa al usuario.

Si haces una búsqueda en la anterior ventana y la búsqueda no devuelve ningún resultado, la apariencia cambia a esta:


Puedes apreciar que: 1) No utilizo MessageBox para notificar al usuario de un resultado vacío. 2) La interfaz utiliza pestañas para dividir visualmente la lista de los registros existentes y resultados de búsqueda. Sin embargo creo que las pestañas no han sido la mejor solución. Toman peso visual y agregan peso cognitivo a la GUI.

La ventana anterior la llamo un explorador de registros. Siguiendo la misma filosofía de los exploradores de archivos. Para ver los datos del registro en si utilizo un "visor".


Puedes apreciar que el visor solamente tiene un botón -Guardar-. Esta decisión de diseño es un poco rara de entender al principio, pero en las pruebas con usuarios reales funciona muy bien luego cuando se acostumbran. Además, he dividido la edición de fechas en tres tres controles. Esto neutraliza la diferencias en preferencias regionales para entender las fechas cortas que son muy problemáticas sino las tratas con cuidado. También el visor utiliza separadores visuales para tipos de información relacionada. Los GroupBox de Windows consumen mucho espacio y sino los utilizas bien agregan ruido a la GUI. Es por esa razón que he elegido esta solución. Está inspirada en los formularios Web.

Estas ventanas de costaron mucho trabajo confeccionarlas. Pero como en ciertos puntos mencioné, aún tienen problemas visuales que sigo resolviendo y que seguro en su momento se los mostraré. Más que todo es simplificar aún más la interfaz y degradar el peso visual de la GUI. La actual en cierta forma es muy chillante

Saludos!
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #16  
Antiguo 02-04-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.591
Poder: 21
newtron Va camino a la fama
Gracias amigo Chris, siempre es bueno ver otras formas de hacer las cosas. Normalmente nos encerramos en nuestras soluciones y a mi me gusta ver distintas soluciones para enriquecer la mía propia.

Por cierto, en su día colgué en ese hilo una imagen de mi pantalla de ventas táctil y ya no se ve, alguien la ha saboteado, algún envidioso seguro.
__________________
Be water my friend.
Responder Con Cita
  #17  
Antiguo 02-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por newtron Ver Mensaje
Por cierto, en su día colgué en ese hilo una imagen de mi pantalla de ventas táctil y ya no se ve, alguien la ha saboteado, algún envidioso seguro.
El problema es el servidor donde está alojada:
Cita:
Empezado por newtron
¡¡A que mola!!

[IMG ]http://www.imagengratis.org/images/dibujogj7eg.jpg[/IMG ]
Responder Con Cita
  #18  
Antiguo 02-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Simple ventanita de búsqueda... de 2004




.
Responder Con Cita
  #19  
Antiguo 02-04-2012
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 23
José Luis Garcí Va camino a la fama
Hola Newtron, te comento, suelo poner en los form un botón buscar, que se une a un locate simplemente, en mi programa Creatablas, puedo crear un formulario de consultas variable y he usado un sistema de consultas programado, puedes ver el código aquí
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #20  
Antiguo 02-04-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.927
Poder: 26
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Ya en todas mis apps (web & moviles) uso el mismo esquema:

http://www.uiparade.com/skill-type/search/



Implementado la misma idea del UISearchBar en los iOS:



Combinado con busqueda "Full text search" donde concateno los campos a buscar en uno solo (ej Postgres) o si el motor no lo soporta, hago una consulta tipo:

Código SQL [-]
SELECT * FROM Tabla WHERE Ref LIKE '1%' AND  Name LIKE '%1%'

Este estilo funciona para casi todo. Solo algo mas concreto (como el tipico form que permite busqueda especifica por campos) si la situacion lo demanda, pero mas como la opcion avanzada.
__________________
El malabarista.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Qué harías si un cliente no te paga? David La Taberna 15 01-04-2012 19:10:09
como cargar en pantalla el teclado satabel API de Windows 3 30-01-2012 12:58:28
Mostrar dos instancias por pantalla de una consulta papulo PHP 3 13-12-2005 16:59:03
¿Cómo capturar pantalla y guardarla en un jpg? D@byt Gráficos 1 22-11-2005 23:10:20
Imprimir Pantalla, como ? Pascual Montes Gráficos 3 30-12-2004 10:04:43


La franja horaria es GMT +2. Ahora son las 01:16:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi