Como ordeno el contenido de un combobox en vfp

Quien me puede ayudar estoy trabajando con base de datos de sql con foxpro y tengo dos combobox y quiero ordenar su contenido. Ya tengo la consulta de foxpro con sql y ya me salen los valores pero necesito ordenar los valores.
Ejemplo:
Tengo dos combobox uno para piso y el otro para departamento
en el piso 1 tengo 10 departamentos en el piso 2 tengo otros 10 departamento y en le piso 3 otros 10 y cada departamento tiene su código, lo que que quiero es que cuando se seleccione el piso uno en el primer combobox en el otro combobox solo me salgan los códigos de los departamentos del piso uno y así sucesivamente. ¿Cómo puedo hacer?

1 respuesta

Respuesta
1

Llamando al combobox de pisos combo1 y al combobox de departamentos combo2 podrías hacer los siguiente..

Al combo2 su ControlSource lo dejás en blanco.

En el método InteractiveChange del Combo1 ejecutas el Select-SQL que cargarás en el Combo2 en ControlSource; entonces cuando selecciones del Combo1 se ejecuta el SQL y muestra en el Combo2 los datos relativos.

Con la información que me envías solo puedo decirte algo así, si quisieras más información enviame un poco más de datos, por ejemplo estructura de las 2 tablas y nombres de los combos y podría indicar mejor el algoritmo; claro!, si es que no alcanza lo que te dije antes.

¡Gracias! 

aqui te dejo algo presido que estoy trabajando solo que este es de ciudades y departamentos .

aquí dejo las estructura de las tablas con las que trabajo ahorita y gracias por la ayuda

create table departamento (codigo varchar(2) not null,nombre varchar(50))
alter table departamento add constraint pkdepartamento primary key (codigo)

create table municipio (depto varchar(2) not null,codigo varchar(2) not null,nombre varchar(50))
alter table municipio add constraint pkmunicipio primary key (depto,codigo)
alter table municipio add constraint fkmunicipio foreign key (depto) references departamento

create table ciudad (depto varchar(2) not null,municipio varchar(2) not null,codigo varchar(3) not null,nombre varchar(50))
alter table ciudad add constraint pkciudad primary key (depto,municipio,codigo)
alter table ciudad add constraint fkciudadmunicipio foreign key (depto,municipio) references municipio

Lo que te decía es que podrías llamar dentro de cada método InteractiveChange del combobox, con SQL.

Tienes:

Combobox1 = Departamento (codigo, nombre)

Combobox2 = Municipio         (depto, codigo, nombre)

Combobox3 = Ciudad              (depto, municipio, codigo, nombre)

En el método Interactive Change del Combobox1 escribes..

&& Lees el código que tiene tu selección de Depatamento; por ej.

cCodigoDepto = Departamento.Codigo

Select nombre, depto, codigo ;

   from Municipio ;

   Order by nombre ;

   where Municipio.depto = cCodigoDepto;

   into cursor csrMuni

thisform.combobox2.ControlSource = csrMuni

...

Luego en el combobox2 escribes.

&& Aqui lees el códige de Municipio y Depatamento. por ej.

cCodigodepto = Departamento.codigo

cCodigoMuni = Municipio.codigo

Select nombre, departamento, municipio, codigo;

   from Ciudad;

   order by nombre;

   where ciudad.departemento = cCodigodepto and ;

   ciudad.municipio = cCodigomuni;

   into cursor csrCiudad

thisform.combobox3.ControlSource = csrCiudad

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas