Buscar y Sumar Resgistros en Acces mediante un evento

Tengo un inconveniente. Que seguramente me puedan ayudar. Sucede que quiero pagar una factura (Formularios de pagos y pagoDetalle) y lo que quiero es que en el evento (Despues de actualizar) del campo; FACTURA_PROVEEDOR, me busque en la tabla Factura_compras_Detalle y me sume los registros del campo total_factura que pertenecen a ese numero de factura.

Consegui este codigo y me va muy bien, pero solo me trae un solo registro. Y hay facturas que tienen varias lineas detalles y se necesitan sumar para tener el total factura. Agredeceria si me dan una mano para sumar los registros pertenecientes a ese mismo numero factura.
Private Sub FACTURA_PROVEEDOR_AfterUpdate()
Me.Monto_Factura = DLookup("total_factura", "Factura_compras_Detalle", "NUMERO_FACTURA=" & Nz(Me.FACTURA_PROVEEDOR, 0))
End Sub

1 respuesta

Respuesta
2

JOsé: Si mi interpretación es adecuada, con solo que sustituyas el DLookUp por DSum, tendrías lo que buscas.

Me.Monto_Factura = Nz(DSum("total_factura", "Factura_compras_Detalle", "NUMERO_FACTURA=" & Nz(Me.FACTURA_PROVEEDOR, 0)),0)

El Nz delante de DSum, es para el caso de que no haya ninguna línea en el Detalle te devuelva on 0 (Cero). Saludos >> Jacinto

José: Repasando tu pregunta y la respuesta que te he dado, veo que la última parte tiene poco sentido, porque estás obligando a que si no encuentra ninguna línea de detalle, busque una cuyo valor sea cero, por tanto creo que sería mejor quitar ese Nz final y dejarlo como >>

Me.Monto_Factura = Nz(DSum("total_factura", "Factura_compras_Detalle", "NUMERO_FACTURA=" & Me.FACTURA_PROVEEDOR),0)

Un saludo >> Jacinto

¡Gracias!  Jacinto Trillo Jareño,

Funcionó perfectamente!!, 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas