Delphi - para viktor - query con like

 
Vista:

para viktor - query con like

Publicado por alan (37 intervenciones) el 31/01/2003 17:44:04
Eso seria bueno pero lo que pasa es que lo que yo le voy a pasar a mi query no es el valor del texto del combobox, ya que ahi tengo la descripicion de la ciudad y yo quiero el codigo de esta para pasarselo a mi query, obviamente la descripcion y el codigo de la ciudad estan en otra tabla,como hago eso
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:para viktor - query con like

Publicado por Victor (102 intervenciones) el 31/01/2003 19:31:55
Ok, nunca me tocó hacer algo similar, pero te voy a dar una idea.
Ya que el combobox solo se puede cargar la descripción de la ciudad, creo que podes combinar con un vector, o sea, suponete el sigte caso:

Código Ciudad
1 Paris
2 Madrid
3 London

En combobox cargarás las descripciones y en el vector los códigos, y la forma de relacionar el combo y el vector sería con el itemindex de los items del combo y el indice del vector. Me entendes?,

Te pongo un ejemplo:
Combo_ciudad : Para la descripción
Vector_codigo: Para los códigos

Cargas en el combo y el vector:

i := 0;
With Ciudad do
begin
open;
first;
while not eof do
begin
Combo_ciudad.items.add(Fieldbyname('ciudad').asstring);
vector_codigo[i] := fieldbyname('codigo').asinteger;
inc(i);
next;
end;
end;

Y para el query:

With Query1 do
begin
close;
sql.clear;
sql.add('select * from la_tabla where codigo_ciudad = ' + inttostr(vector_codigo[combo_ciudad.itemindex]));
open;
end;

Ninguno de los códigos he probado, así que tal vez tendrá algunos errores de sintaxis, pero espero que por lo menos la idea te haya quedad claro.

Espero que te haya servido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:para viktor - query con like

Publicado por Victor (102 intervenciones) el 31/01/2003 19:45:05
También podes hacerlo poniendo el SQL de la siguiente manera:

Select * from la_tabla where codigo_ciudad in
(select codigo from ciudad where descripcion = '''' + combo_ciudad.text + ''')

Por supuesto, en el combo tenes que cargar las descripciones y tu gestor de base de datos debe soportar subquery.

La verdad que esta segunda opción es mas simple, en el 1ro me compliqué devalde, ya ves, a veces damos mucha vuelta cuando la solución es simple.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar