Como calculo saldos continuos

Primero quiero felicitarte por tu excelente pagina.

Sabes tengo una BD para inventarios pero necesito calcular saldos continuos, es decir, tengo un campo ingresos, otro campo Salidas y un campo saldo que tendría que ser el que arrastra los saldos.

Ej.

Fecha ingresos egresos saldo

01/01/12 50 0 50

01/01/12 0 10 40

15/04/12 100 0 140

16/04/12 0 30 110

17/04/12 0 40 70

Como hago que el campo saldo calcule los saldos como esta en el ejemplo...

Esto puede usarse incluso para el debe, haber y saldo en contabilidad.

1 Respuesta

Respuesta
1

en la página: http://angelessebas.es/

En el apartado supuestos y soluciones ---> Bases de datos ---> Gestionar las entradas de Pagos, Cobros y Saldos para un código de usuario

Muchas gracias.

Pero los cuadros de texto de pagos y cobros no me muestran ningún valor, lo que necesito es que se muestre todo el desarrollo o evolución del movimiento, es decir, necesito generar un informe o un formulario que me muestre los datos tal y como están en el ejemplo que envíe.

Graciass

Lo que tienes que hacer primero es calcular el saldo, esto lo puedes hacer poniendo el código en la acción Al cargar del formulario continuo que definas basado en la tabla.

De esta forma, al cargar el formulario te saldrán TODOS los registros de esa tabla en sus campos correspondientes.

perfecto pero..

el campo saldo me muestras solo el ultimo saldo, es decir, en el ejemplo que te envíe en campo saldo me arroja 70 que corresponde al último saldo.

lo que necesito es que en cada fila me muestre el saldo correspondiente saldo + ingresos - egresos

graciass

Entonces... el formulario te arroja esto:

Fecha ingresos egresos saldo
01/01/12 50 0 70
01/01/12 0 10 70
15/04/12 100 0 70
16/04/12 0 30 70
17/04/12 0 40 70

¿En la tabla tienes el campo Saldo...?

correcto así me genera los resultados

y si tengo el campo saldo

Te pasa porque no actualizas el campo saldo registro a registro, sino que lo actualizas con el último valor.

Supongamos que la tabla se llama Saldos, con los campos Fecha, Ingresos, Egresos y Saldo

En las propiedades del formulario, en la acción Al cargar ---> procedimiento de evento ---> picas en el cuadrado de la derecha, el de los ... para abrir el generador de código y pones el código siguiente:

Dim db As Database

Dim rs As Recordset

Dim vSaldo As Double
Set db = CurrentDb

Set rs = db.OpenRecordset("Select * from Saldos order by Fecha, egresos, ingresos")
vSaldo = 0
Do While Not rs.EOF
vSaldo = vSaldo + rs!Ingresos - rs!Egresos rs.Edit rs!Saldo = vSaldo rs.Update
rs.MoveNext
Loop

Te explico el código:

* definimos las variables:

db ----> para la base de datos

rs ---> para el recordset

vSaldo ---> para el saldo

* Activamos la BD

* Creamos el recordset

* Damos el valor cero a la variable vSaldo

* Empezamos a recorrer el recordset (Do while not rs. Eof ---> hazme mientras no sea fila del recordset rs)

* Calculamos el saldo ---> será igual al saldo anterior más los ingresos menos los egresos

* Pasamos al siguiente registro (rs. MoveNext)

* Cerramos el bucle (Loop)

vSaldo = vSaldo + rs!Cobros - rs!Pagos rs.Edit rs!Saldo = vSaldo rs.Update

VBA marca esta linea con rojo. No funciona

Estoy haciendo algo mal

vSaldo = vSaldo + rs!Ingresos - rs!Egresos

rs.Edit rs!Saldo = vSaldo

rs.Update

En distintas filas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas