Estoy desarrollando una aplicación en vfp 9 que se conecta a Mysql, ahora lo que necesito hacer es, en un formulario un combobox rellenarlo con los datos de tabla, que en tiempo de ejecución se abra el combobox muestre los campos "código" y "nombre" y por tabla pero que a la hora de guardar guarde unicamente el campo "código".
1 Respuesta
Respuesta de davsoft
2
2
davsoft, Desarrollador con 10 años de experiencia en el area de Visual...
Si esta muy bien clara tu pregunta, esto seria así. =sqlexec(xControl,"select * from clientes","curClientes") &&extramos los datos de Mysql thisform.combo1.rowsourcetype = 6 && tambien puede usar el valor 2 "alias" pero no tienes tanto el control como en 6 (campos), asi asignamos que columnas queremos y donde queremos thisform.combo1.rowsource = "curClientes.nombre,codigo" thisform.combo1.boundcolumn = 2 &&con esto le decimos al combo que value sera de la columna2, o sea de codigo. supongamos que el usuario elige el tercer elemento que corresponde a Juan Perez codigo 134 si haces esto a=thisform.combo1.value la variable a tendra el valor "134" recuerda que el valor del combo es caracter, si vas a asignarle valores como thisform.combo1.value = 134 el automaticamente se vuelve numerico, y el valor ya no sera el "codigo" sino el valor 134 de la lista, seria el orden, si no tienes ordenado por codigo tus datos entonces no cohincidiran con lo que quires guardar, por lo tanto si quieres asignar valores a tu combo has lo siguiente: thisform.combo1.value = "134" con esto no alteras la propiedad del combo, estas son las propiedades basicas que debes recordar.
Bárbaro maestro!, no pude haber obtenido mejor respuesta, se lo agradezco muchísimo, ya lo probé y funciona a la perfección. Un saludo desde El Salvador...