FoxPro/Visual FoxPro - Ayuda con Combobox y Select

 
Vista:
Imágen de perfil de Anibal
Val: 36
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Ayuda con Combobox y Select

Publicado por Anibal (25 intervenciones) el 06/02/2020 17:37:45
Saludos, de antemano muchas gracias por su atención

Tengo un formulario destinado a realizar una recepción de equipos...
mi intención es cargar un Combo Box con un listado de equipos (Impresoras, Monitores, Impresoras, etc) para ello en el Init del formulario hago esto:

1
2
3
4
5
SELECT equipos
thisform.cmbEquipos.Value = equipos.cod_equipo
SCAN
	thisform.cmbEquipos.AddItem (equipos.nom_equipo)
ENDSCAN

hasta alli perfecto, la idea es al seleccionar por ejemplo Impresora, se me cargue el siguiente combobox (Marcas) con la lista de marcas de impresoras (epson, hp, citizen, etc), para lo cual en el evento valid del combobox de equipos hago esto:


1
2
3
4
5
6
7
8
9
10
11
12
CodigoEquipo = thisform.cmbEquipos.Value
 
SELECT cod_marca, nom_marca FROM marcas WHERE cod_Equipo = CodigoEquipo INTO CURSOR ListMarcas readwrite
 
SELECT ListMarcas
	Thisform.cmbMarcas.Value = ListMarcas.cod_marca
	CodigoMarca = Thisform.cmbMarcas.Value
	SCAN
		thisform.cmbMarcas.AddItem (ListMarcas.nom_marca)
	ENDSCAN
 
thisform.cmbMarcas.SetFocus

de hecho lo hace, carga la información el problema que evidencio es que cuando trato de volver a cliquear sobre el combobox equipos pues me da error

al hacerlo en el evento Valid de este objeto no puedo volver a seleccionar otro equipo, y si lo hago en el evento click pues tambien el comportamiento del formulario no me convence, bien sabré agradecer sus buenos oficios al respecto,

igualmente los cursores creados siguen con la información consultada, al cerrar el formulario es decir sigue en memoria los datos del select

gracias
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
Imágen de perfil de Abel
Val: 642
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Ayuda con Combobox y Select

Publicado por Abel (286 intervenciones) el 07/02/2020 15:59:15
Hola Anibal, borra lo que tienes en el init y escribe en las propiedades del combobox cmbEquipos, lo siguiente:
Rowsource, escribe "equipos.nom_equipo" (sin las comillas); y en Rowsourcetype selecciona la opción 6 - Field; entonces cada vez que selecciones un equipo en el combobox, se moverá el cursor a dicho registro;

1. El combobox cmbMarcas, las propiedades iniciales deben ser Rowsource = "" y Rowsourcetype = 0 - None.
2. Escribe en el método Interactivechange del combobox cmbEquipos, lo siguiente...

1
2
3
4
5
CodigoEquipo = equipos.cod_equipo
select select(1)
SELECT cod_marca, nom_marca FROM marcas WHERE cod_Equipo = CodigoEquipo INTO CURSOR ListMarcas readwrite
thisform.cmbMarcas.Recordsource = ListMarcas.nom_marca
thisform.cmbMarcas.Rocordsourcetype = 6
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