Access - factura

 
Vista:

factura

Publicado por pako (13 intervenciones) el 02/09/2005 19:34:29
ok ya pude hacer lo que queria de una tabla cliente filtrar un solo dato. ahora lo que quiero hacer es en un formulario llamado formato de factura abro un subformulario donde seleccione el cliente que quiero que aparesca en el informe1 y de otro subformulario donde pueda seleccionar los productos que le quiero facturar a ese cliente lo que quiero hacer es que en el mismo informe de factura1 poner el cliente que seleccione y los productos que seleccione todo en el mismo informe factura 1 ojala me puedan ayudar gracias,
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
Imágen de perfil de Alejandro

Generar informe de factura con datos de cliente y productos seleccionados en subformularios

Publicado por Alejandro (4142 intervenciones) el 07/06/2023 22:33:24
1. Crea un formulario principal llamado "Formato de Factura" con un subformulario para seleccionar el cliente y otro subformulario para seleccionar los productos.
2. En el formulario principal, agrega un botón llamado "Generar Factura" para generar el informe de factura.
3. En el evento del botón "Generar Factura", escribe el código VBA siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Private Sub btnGenerarFactura_Click()
    Dim rpt As Report
    Dim strSQL As String
 
    ' Obtener el ID del cliente seleccionado en el subformulario de clientes
    Dim clienteID As Integer
    clienteID = Me.subformularioClientes.Form.clienteID
 
    ' Obtener los IDs de los productos seleccionados en el subformulario de productos
    Dim productosIDs As String
    Dim producto As Variant
    For Each producto In Me.subformularioProductos.Form.lstProductos.ItemsSelected
        productosIDs = productosIDs & Me.subformularioProductos.Form.lstProductos.ItemData(producto) & ","
    Next producto
    productosIDs = Left(productosIDs, Len(productosIDs) - 1) ' Eliminar la última coma
 
    ' Crear la consulta SQL para obtener los datos del cliente y los productos seleccionados
    strSQL = "SELECT * FROM Clientes WHERE ID=" & clienteID & ";"
    strSQL = strSQL & "SELECT * FROM Productos WHERE ID IN (" & productosIDs & ");"
 
    ' Crear el objeto Reporte y establecer la consulta SQL como origen de datos
    Set rpt = New Report
    rpt.RecordSource = strSQL
 
    ' Abrir el informe en vista de impresión
    DoCmd.OpenReport "Factura1", acViewPreview, , , acWindowNormal
 
    ' Limpiar el objeto Reporte
    Set rpt = Nothing
End Sub

4. Asegúrate de reemplazar "subformularioClientes" y "subformularioProductos" con los nombres reales de tus subformularios.
5. Crea un informe llamado "Factura1" con el diseño adecuado para mostrar los datos del cliente y los productos.
6. Configura el informe "Factura1" para utilizar la consulta SQL como origen de datos.
7. Ejecuta el formulario principal "Formato de Factura" y selecciona el cliente y los productos deseados.
8. Haz clic en el botón "Generar Factura" para abrir el informe "Factura1" con los datos seleccionados.

Esta solución te permitirá generar un informe de factura con los datos del cliente seleccionado y los productos elegidos en los subformularios. Puedes repetir este proceso para generar facturas con diferentes clientes y productos cada vez que lo necesites.
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