El botón de actualizar no me actualiza el valor que tengo el los datacombos, solo los textbox's

Tengo una aplicación sencilla (directorio)con una base de datos, en la cual utilizo datacombos y textbox's puse los botones de adelantar registro, atrás, etc.
El problema es que el botón de actualizar no me actualiza el valor que tengo el los datacombos, solamente sirve para los textbox's estoy usando el método
data1. Recordset. Edit
data1. Recordset. Update
ke puedo hacer para ke me actualice el valor de los datacombos?
1

1 respuesta

Respuesta
1
Perdona pero no te entiendo:
Me dices que tienes una base de datos y un formulario (o más) con controles Text y Dbcombo.
Supongo que tienes unos contoles Data asociados a la base de datos y que los controles Text y DBCombo están asociados a esos controles data ¿es así?
Si es así, ¿para que usas el Edit y el Update? La sincronización de estos controles con los Data es automática.
¿Cuál es "Botón de Actualizar"? ¿Lo has puesto tu? ¿Qué se supone que hace?
En fin, que no te entiendo. Si me lo aclaras tendré mucho gusto en ayudarte.
Suerte ;-)
Si, es una aplicación con varios formularios, tengo la base de datos en access y accedo a ella por medio de un control data, y los controles textbox y dbcombo están asociadosa la BD.
Mi problema es que yo hice una serie de botones para moverse en los registros(Primero, siguiente, anterior, ultimo, borrar, agregar y actualizar)el botón actualizar se utiliza cuando por ej pusiste en un campo un registro equivocado (ej: soologico)y lo quieres cambiar (ej: zoológico) este botón lo debe de hacer si grabarte un nuevo registro, solo cambiar los datos del registro existente.
Para esto estuve utilizando el código que te escribí anteriormente, y funciona bien con los text, pero con los dbcombos no me permite hacer los cambios, ¿qué puedo hacer?
Espero que me haya dado a entender si no, por favor contáctame y te explico con más detalle
Si estás manejando la base de datos como me dices, no consigo entender la función del botón actualizar. Si tienes un textbox enlazado así a una base de datos, cualquier cambio que tu haces en el textbox pasa a la base de datos automáticamente en cuanto el registro actual deja de serlo, esto es, en cuanto te mueves a otro registro o al cerrar el formulario. No necesitas un botón de actualizar. En todo caso lo que necesitarías es un botón de deshacer, esto es, que si tu escribes algo en el texbox y te arrepientes y quieres volver a tener lo que tenía la base de datos, necesitas un botón para deshacerlo, porque si no, el automatismo del que te hablo no te permitirá nunca recuperar el valor. (Esta función del deshacer se hace con el método UpdateControls del control Data)
Respecto de los dbcombo sigo sin entenderte. Lo habitual, es que tu tengas una tabla "Tabla1" de una base de datos con varios campos, de los cuales algunos son libres, y se actualizan con un Textbox, y otros sólo admiten valores a escoger entre una lista, y entonces los valores posibles se leen inicialmente de otra tabla "Tabla2" y se utilizan para actualizar la Tabla1 cuando el usuario selecciona un valor del Combo. Si lo que quieres es esto, dímelo porque es muy fácil.
Sin embargo por lo que yo entiendo de lo que me dices, es que pretendes actualizar la tabla2, que es la de los valores del combo utilizando el propio combo. No me extraña que esto no funcione, porque el combo no está pensado para esto.
Ya pude por fin hacer lo que quería, muchas gracias y una gran disculpa por no poder explicarme bien.
Pero me surgió otra duda, tengo un dbcombo ligado al campo modelo de mi tabla, el problema es que en la lista del combo me aparecen valores repetidos aunque sean los mismos por ej: si pongo el numero de modelo 1 en un registro y en otro registro pongo el numero 1 otra vez, el combo me despliega dos unos.
Creo que esto se puede hacer con un script pequeño de sql o algo así pero no estoy seguro, espero que me puedas ayudar
de antemano gracias
Me alegro que se solucionen tus problemas.
Respecto de lo que me dices, para evitar repetición de registros, te indico que cuando tu asignas una tabla de access a una propiedad de un control, por ejemplo a la propiedad RowSource del DbCombo puedes poner:
Dbcombo1.RowSource="Tabla1"
O puedes poner una sentencia SQL que actuando sobre la base de datos devuelva un conjunto de registros (lo que en ACCESS sería una consulta).
Por ejemplo:
DbCombo1.Rowsource="SELECT * FROM Tabla1 WHERE Ciudad= 'Paris' ORDER BY Edad"
Para tu caso, una consulta que devuelva los registros de una tabla sin repeticiones de un campo, sería algo así como:
DbCombo1.RowSource="SELECT DISTINCT Modelo FROM Modelos"
Creo que eso solucinará tu problema.
Suerte :-)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas