Consulta sobre cuenta corriente de proveedor en Access

Quería hacerles una consulta sobre como podría armar una cuenta corriente de proveedor donde registre las facturas, nota de crédito, nota de débito y los pago que voy realizando y que tenga un campo débito crédito y uno de saldo que calcule los saldos según vayan entrando facturas y se vayan pagando... Cualquier sugerencia me vendría muy bien ya que lo puedo hacer en excel pero me gustaría tenerlo en access...

Respuesta
3

Se puede hacer de mil formas. Por ejemplo, supongamos que tengo una tabla con los datos de los proveedores (para el ejemplo, lo tengo hecho con Clientes, ventas, Detalleventa, etc pero sería exactamente igual) y tengo un formulario Ventas con un subformulario DetalleVenta donde voy anotando las ventas que le hago

En esta caso, a Alfreds le he hecho 4 ventas, el 5 registro es a Antonio. Vamos a suponer que un buen día ( y nunca mejor dicho) un cliente viene a pagarte algo. Lo elegirías en un formulario

En el combinado sólo aparecen aquellos que tienen pendiente algo que pagarte(por si quieres "hacerle" una visita, pero que parezca un accidente). Elijo a uno y se abre el formulario entregas(basado en la tabla Facturas) con los diferentes importes que tiene pendiente de pagar.

Anoto la cantidad que me da y pulso Compensar y me queda como

Es decir, con esos 300, ha cancelado la primera factura, la segunda(por eso están marcadas como canceladas) y quedan pendientes 149 euros de la tercera.

Si pasan unos días y vuelve a darte algo más ¡ Bendito sea Dios !, cuando elijas ese cliente, ya solo te muestra lo pendiente

Anotaría la entrega, etc...

Y así, tanto en la tabla Facturas, (que para tí sería la de Compras) tengo lo que le he vendido(comprado), como en la tabla Entregas(pagos) tendría lo que me ha ido dando y lo que le queda por entregar. Y todas la ventas, se van acumulando sin problemas.

El código del evento Al hacer clic del botón Compensar es

Private Sub Compensar_Click()
DoCmd.SetWarnings False
DoCmd.RunSQL "insert into entregas(idcliente,fechaentrega,entrega)values(idcliente,date(),entrega)"
DoCmd.GoToRecord , , acFirst
Dim i As Integer
For i = 1 To Me.Recordset.RecordCount
Resto = DSum("entrega", "entregas", "idcliente=" & Me.IdCliente & "") - DSum("importe", "facturas", "idfactura<=" & Me.IdFactura & "")
If Resto >= 0 Then
Cancelada = True
DoCmd.GoToRecord , , acNext
ElseIf Resto < 0 Then
Exit Sub
End If
Next
End Sub

Por cierto, si quieres, repito, si quieres, mándame un mensaje(solo el mensaje) a [email protected] y te mando ese ejemplo.

Si lo haces, en el asunto del mensaje pon tu alias Martín, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas