Saldo por Cliente
Publicado por Angel (90 intervenciones) el 14/10/2016 20:59:01
Hola a todos y gracias. Si podéis indicarme el camino de mi cuestión. He visto en la pagina de Neckkito un ejemplo de saldo continuo sobre un form continuo que usa este codigo;
Los valores numéricos están en una sola tabla y cuando intento hacer arreglos para agrupar registros por IdSocio, no funciona, vamos que deja de hacer las cuentas bien. El ejemplo esta muy bien para una única cuenta, ¿Alguien puede indicarme el camino para conseguirlo.?
Gracias...
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Private Sub cmdSaldos_Click()
'---Requiere tener registrada la referencia "Microsoft DAO 3.6 Object Library"
'---o biblioteca equivalente---------------------------------------------------
'Declaramos las variables
Dim rst As DAO.Recordset
Dim vIng As Currency, vGto As Currency
Dim vSaldo As Currency
Dim miSql As String
'Creamos la consulta para ordenar los movimientos por fecha
miSql = "SELECT * FROM TMovimientos ORDER BY TMovimientos.Fecha"
'Inicializamos vSaldo
vSaldo = 0
'Creamos el recordset sobre la SQL
Set rst = CurrentDb.OpenRecordset(miSql)
'Si no hubiera registros saltamos a Salida
If rst.RecordCount = 0 Then GoTo Salida
'Iniciamos el proceso de actualización de [Saldo]
With rst
.MoveFirst
Do Until .EOF
'Cogemos el valor del ingreso. Si no hay valor hacemos que el valor por defecto sea cero
vIng = Nz(.Fields("Ingreso").Value, 0)
'Cogemos el valor del gasto. Si no hay valor hacemos que el valor por defecto sea cero
vGto = Nz(.Fields("Gasto").Value, 0)
'Calculamos el saldo del movimiento
vSaldo = vSaldo + vIng - vGto
'Escribimos dicho valor en la tabla
.Edit
.Fields("Saldo").Value = vSaldo
.Update
'Nos movemos al siguiente registro
.MoveNext
Loop
End With
'Cerramos el formulario actual
'DoCmd.Close acForm, Me.Name
'Abrimos FMovUpdated con la información actualizada en vista sólo lectura
DoCmd.OpenForm "FMovUpdated", , , , acFormReadOnly
Salida:
'Cerramos conexiones y liberamos memoria
rst.Close
Set rst = Nothing
End Sub
Los valores numéricos están en una sola tabla y cuando intento hacer arreglos para agrupar registros por IdSocio, no funciona, vamos que deja de hacer las cuentas bien. El ejemplo esta muy bien para una única cuenta, ¿Alguien puede indicarme el camino para conseguirlo.?
Gracias...
Valora esta pregunta


0