Access - Cómo agregar una fila a un subformulario?

   
Vista:

Cómo agregar una fila a un subformulario?

Publicado por José (1 intervención) el 29/07/2008 15:31:49
Hola, tengo un formulario y un subformulario con cuadros de texto independientes a mi base de datos. Estoy programando un botón BuscarFactura para recuperar los registros de la bd y mostrar en en formulario utilizando el recordset. La pregunta es la siguiente:
Cómo puedo agregar una nueva fila al subformulario? El código que tengo va encimando los registros de detalle en una sola fila del subformulario, creo que me falta una línea de código que me inserte nuevas filas en el subformulario. A continuación les paso el código del botón BuscarFactura.

Private Sub cmdBuscarFactura_Click()
'Declaro Variables
Dim DB As Database
Dim rsFacturas As Recordset
Dim rsFacturasDet As Recordset
Dim vFactura As Long

'Abro base de datos en Access
Set DB = OpenDatabase("C:UsersjoseluisDocumentsfactimp.mdb")

'Cargo en la variable factura el código a buscar
vFactura = Form_Facturas.txtFactura

'Hago un Select de la tabla facturas mediante el metodo recordset
Set rsFacturas = DB.OpenRecordset("Select * From Facturas WHERE factura = " & vFactura & "")

If rsFacturas.EOF Then
MsgBox ("Número de Factura no existe")
Form_Facturas.txtFactura.SetFocus
Else
'Descargar contenido en el formulario
Form_Facturas.txtNombre = rsFacturas!Nombre
Form_Facturas.txtFecha = rsFacturas!Fecha
Form_Facturas.txtCondicion = rsFacturas!Condicion
Form_Facturas.txtTotal = rsFacturas!Total
Form_Facturas.txtIva10 = rsFacturas!Iva10

'Descargar contenido en el subformulario

'Hago un Select de la tabla facturasdet mediante el metodo recordset
Set rsFacturasDet = DB.OpenRecordset("Select * From Facturasdet WHERE factura = " & vFactura & "")
Do While Not rsFacturasDet.EOF
Form_FacturasDet.txtFacturaDet = rsFacturasDet!FacturaDet
Form_FacturasDet.txtFactura = rsFacturasDet!Factura
Form_FacturasDet.txtDescripcion = rsFacturasDet!Descripcion
Form_FacturasDet.txtCantidad = rsFacturasDet!Cantidad
Form_FacturasDet.txtPrecio = rsFacturasDet!Precio
Form_FacturasDet.txtTotal = rsFacturasDet!Total
rsFacturasDet.MoveNext
MsgBox "Aquí es donde me falta una línea de código aparentemente"
Loop
rsFacturasDet.Close
End If
rsFacturas.Close
DB.Close
End Sub
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

RE:Cómo agregar una fila a un subformulario?

Publicado por mi menda (1111 intervenciones) el 29/07/2008 16:21:48
Hola Jose:
Creo que te estas complicando la vida, sí en el formulario principal ya tienes la factura, solo tendrias que poner en el subformulario como origen de datos la Sql.

en el evento al cargar formulario
Me.Subformulario.Form.RecordSource =""

Descargar contenido en el subformulario

Me.Subformulario.Form.RecordSource ="Select * From Facturasdet WHERE factura = " & vFactura & ""

Claro... que en el subformulario no puedes tener campos independientes.

Un saludo
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