José Luis,
Eso es imposible a no ser que hagas un interface super probre, es decir,
cada tabla tendrá campos candidatos distintos para formar parte del QBE, y
no hay una regla fija. Algunos campos permitirán usar checkboxes, otros
númericos que sean tipos enumerados podrían ir en un TRadioMenu, un
TComboBox o un TListBox, etcetera.
Lo que pides es que como tener un formulario genérico para mantenimiento de
tablas, y se puede hacer, pero con un aspecto visual super pobre y a mi
gusto poco operativo incluso.
Quizas lo que más te preocupue sea la construcción de la sentencia SELECT
concatenando todos los campos del QBE que se han utilizado. Te aseguro que
es un juego de niños, cuando estés en esa parte te echo una mano.
En defenitiva pides lo imposible, lo siento

Un saludo,
"José Luis Capel" <
jose.luis@capelsoft.com> escribió en el mensaje
news:[email=
42ed6f98@ozsrvnegro.ozlan.local...]
42ed6f98@ozsrvnegro.ozlan.local...[/email]
> Ignacio,
>
> Gracias por tu interés y por tu extensa explicación que, creo, he
> entendido.
>
> Ahora la cuestión es más simple... pero más complicada... Crear un QBE
> genérico (a nivel de clase) para especializarlo en cada mantenimiento (por
> herencia y sobree-escritura de métodos). Además de añadirle el componente
> 'ergonómico' (osea bonito y fácil de usar).
>
>
> Repito las gracias y saludos,
> José Luis Capel
>
>
> Ignacio Ortiz escribió:
>> José Luis,
>>
>> En una tabla de 50.000 registros me parece muy poco práctico poner los
>> típicos botones de anterior, siguiente, primero, último, y además hacerlo
>> sobre una tabla SQL es simplemente un pecado (que me perdonen los que no
>> piensen como yo).
>>
>> Creo que el enfoque de ficha con los botones de navegación no es en
>> absoluto adecuado para manejar grandes tablas, e incluso para pequeñas
>> tablas tampoco le veo utilidad, decantandome más por una visualización
>> tipo Browse para ellas. En mi opinión la visión tipo ficha sólo es viale
>> en entornos ofimáticos y accesos directo a ficheros planos tipo DBF y
>> además pequeños.
>>
>> Como alguna vez ya he comentado el quiz del SQL es intentar que los
>> cursores que devuelve el servidor sean lo más pequeños posibles. De esta
>> forma consigermos que el servidor atienda a gran cantidad de puestos sin
>> tener que gastarnos una fortuna y además conseguiremos que funcione a
>> través de WANs sin muchos problemas.
>>
>> Lo más aconsejable es establecer un pequeño QBE (Query by example) sobre
>> los campos de la tabla más obvios de ser utilizados en la búsqueda, y
>> sólo mostrar los campos más representativos, NO TODOS. Solamente se han
>> de mostrar todos cuando se desee ver o editar el registro completo.
>>
>> Igualmente, a mi modo de ver, es un error cuando se quieren mostrar dos
>> tablas relacionadas, que según se navegue en una se muestren los
>> registros relacionados en la otra debido a que provoca un montón de
>> consultas en el servior innecesarias. En el caso de los DBF no suponía un
>> problema pero con motores SQL puede afectarle seriamente. En dichos casos
>> el browse de la tabla relacionada de mantenerse vacio hasta que se pulse
>> un botón de 'Cargar' o equivalente.
>>
>> En definitiva, hay que ahorrarle trabajo al servidor, y bytes a la
>> conexión. De esta forma conseguiremos que nuestra aplicación vuele y
>> además funcione perfectamente sobre redes lentas.
>>
>> Un saludo,
>>
>> "José Luis Capel" <
joseluis@iaicom.com> escribió en el mensaje
>> news:42e9dc25$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>>
>>>Ignacio,
>>>
>>>Gracias por tu respuesta.
>>>
>>>Quizás no me he expresado bien....
>>>
>>>La cuestión es más de planteamiento que técnico.
>>>
>>>Si tengo un formulario de la ficha de clientes con una barra de
>>>navegación (datasets y datacontrols).
>>>
>>>¿Qué es mejor?
>>>
>>>a. Traerme _todos_ los registros y moverme entre ellos con los métodos
>>>que me provee los dataxxxxx (hay sitios donde hay 50000 o más fichas de
>>>clientes)
>>>
>>>b. Traerme _solo_ el que se visualiza y si piden ir al siguiente, traerme
>>>el siguiente registro, y si piden ir al último, traerme el último
>>>registro.
>>>
>>>
>>>En fin estas son mis cuestiones.
>>>
>>>Saludos y gracias,
>>>José Luis Capel
>>>
>>>Ignacio Ortiz escribió:
>>>
>>>>José Luis,
>>>>
>>>>El DataSet es una colección de registros, y al igual que ocurre con las
>>>>áreas de trabajo, estás posicionado en un registro-fila en concreto.
>>>>Para navegar por el dataset hay un montón de métodos que se parecen muy
>>>>mucho a los comandos clásicos de Clipper. Echa un vistazo a TDbfDataSet.
>>>>
>>>>Un saludo,
>>>>
>>>>"José Luis Capel" <
joseluis@iaicom.com> escribió en el mensaje
>>>>news:42e8f9ea$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>>>>
>>>>
>>>>>Hola,
>>>>>
>>>>>Para los conocedores y/o expertos de SQL. Pregunta de principiante.
>>>>>
>>>>>Situación:
>>>>>Pantalla de trabajo (tipo ficha) con barra de navegación (por ejemplo:
>>>>>clientes).
>>>>>
>>>>>Pregunta:
>>>>>¿El dataset es de solo el registro actual? ¿De todos los registros?
>>>>>
>>>>>Si es de solo el registro actual.... y quieren ir al siguiente, ¿como
>>>>>se haría? ¿Y si quieren ir al último?
>>>>>
>>>>>En fin... por ahí van mis dudillas...
>>>>>
>>>>>Agradecido por la ayuda.
>>>>>José Luis Capel
>>>>
>>>>
>>