¿Qué código vba debo poner en un botón de un formulario para guardar registros de un subformulario que hay en el formulario?

Tengo un formulario Facturas en el que he incluido otro subformulario con los detalles de la factura. La cuestión es que quiero hacer un botón que al pulsar guarde los registros del subformulario y después los deje en blanco para poder introducir otra factura. Lo estoy intentando hacer con sentencias SQL pero no consigo buenos resultados. Supongo que será algo fácil pero no me sale.

3 respuestas

Respuesta
1

Pregunto ¿hay relación entre el formulario y el subformulario, tipo Idfactura, Idproducto o similar? Porque el formulario dependerá de una tabla, vamos a suponer Facturas, pero el subformulario DetalleFactura dependerá de otra. Porque si haces un subformulario tabular sin origen de datos, con los cuadros de texto independientes, sólo te aparecerá una línea.

Pero bueno, si ese es el caso con crear un botón de comando en el formulario y poner en sus Propiedades-eventos-al hacer clic, crea un procedimiento de evento y entre Private Sub Y End Sub escribe

Docmd. Runsql"insert into detallefactura(trabajo, precio)values(forms!facturas!detallefactura.fom!trabajo, forms!facturas!detallefactura.form!precio"

forms!facturas!detallefactura.form.recordsource=null

Suponiendo que los cuadros de texto del subformulario se llamen también trabajo y precio.

Pero insisto, me extraña mucho que el subformulario no tenga origen de datos y no está relacionado, de alguna forma con el formulario.

Creo que lo mejor es que hagas una copia de tu base con solo las tablas vacías y los formularios y me lo mandes a [email protected]. Lo miro y te digo.

Pero si le pones un par de registros inventados, mejor que mejor, asi no tengo que rellenarlos yo

Respuesta
1

Vanrod: Si tienes que recurrir a una SQL para guardar los datos del Subformulario Detalles de Facturas es que la esructura que tienes (a mi modo de ver), no es adecuada.

El subformulario, debe estar vinculado al Formulario por un Identificador, que es el de la Factuar.

Los detalles de Facturas tendrán su Tabla y se guardarán solos si está como Origen del Sub Formulario.

Así cuando añadas una nueva Factura los datos del Detalle te aparecerán en blanco.

Es lo que yo deduzco de tu pregunta. Saludos >> Jacinto

Respuesta
1

Suponiendo que tanto el formulario como el subformulario estén basados sobre tablas de tu base de datos, los registros se guardan automáticamente. Lo único que has de hacer en tu botón es decirle que vaya a un registro nuevo del formulario, y automáticamente el subformulario te aparecerá en blanco, pues no hay registros relacionados con el formulario.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas