Actualizar datos de un formulario

Utilizo un formulario para hacer encargos de productos que está compuesto por los datos de la factura más un subformulario en el que elijo los productos (primero el tipo y después el producto). Recientemente he creado un botón para pasarlo a una tabla de facturas para agilizar el proceso, para ello he creado también un cuadro combinado en el que elijo el cliente para extraer los datos de facturación de su correspondiente tabla, el problema es que si elijo un cliente, cuando le doy al botón para pasar a factura (que lo que hace es mover los datos simplemente) me da errores, lo inserta al final de otra factura o se salta varios números de factura. La cuestión es que después de varios días he averiguado que no enviaba los datos del cuadro combinado en el que elijo el cliente porque si cierro el formulario y lo vuelvo a abrir funciona perfectamente, lo cual me ha llevado a deducir que los datos no se actualizaban en el formulario. Después lo supe con certeza porque escribía algo en el campo "Notas" que no me copiaba a la tabla de facturas.
¿Qué puedo hacer para que los actualize? ¿Existe alguna instrucción?
Por ahora lo cierro y lo abro antes de darle al botón pero no soy la única persona que maneja la BD y me la pueden fastidiar.
He intentado explicarme lo mejor posible pero si no se entiende me pueden preguntar lo que sea.

1 respuesta

Respuesta
1
Para que estando dentro de un registro te actualice los datos se usa el
form.refresh
Es decir, supongamos que has escrito en unos cuadros de texto y, sin salir de ese registro quieres que te los guarde. En cualquier evento, por ejemplo, en ese de pasar a factura, antes le pones
form.refresh
De todas formas, supongamos que la tabla origen del formulario se llama Ventas y tiene un campo Idventa. En el evento al hacer clic del botón puedes poner
Form.refresh
docmd.runsql"insert into facturas select * from Ventas where [idventa]=[forms]![nombre del formulario]![idventa]"

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas