FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Campos Calculados en base un registro anterior al actual
Campos Calculados en base un registro anterior al actual
Estoy haciendo la típica tabla contable DEBE | HABER | SALDO Siendo SALDO, un campo calculado en base al DEBE y el HABER. Pero no se como hacer para calcularlo y mostrarlo como se debe, como en la vieja escuela. Porque? Porque si bien el saldo se obtiene directamente desde la operación con DEBE y HABER, necesito que, partiendo del primer registro de la tabla, los siguientes SALDOS, se calculen en base al arrastre de cuentas, es decir, supongamos que tengo: ID | DEBE | HABER | SALDO --------------------------- 1..........2..........0.......-2 2..........5..........0.......-7 3..........8..........0.......-15 4..........0..........5.......-10 etc. Puedo hacer el DEBE-HABER cuando calculo el campo, pero como hago para que me arrastre el SALDO anterior? no se me ocurre. Saludos y gracias
__________________
Última edición por MaMu fecha: 07-03-2008 a las 20:53:58. |
#2
|
|||
|
|||
seria algo como la suma de los DEBE menos la suma de los HABER.
siempre que el sean ID's menores o iguales a mi ID. |
#3
|
|||
|
|||
bueno, se me ocurre una subconsulta, algo asi como:
a lo mejor algo me falla pero creo que ahi esta la idea... |
#4
|
||||
|
||||
Si, la idea podria ser, pero el tema esta que la consulta, si o si, tiene que estar ordenada por FECHA.
__________________
|
#5
|
||||
|
||||
Cita:
__________________
|
#6
|
||||
|
||||
Sobre el ordenamiento, podrías ordenarla tal como te plazca:
El inconveniente que veo de enfrentar el problema con esta solución es el rendimiento. En bases de datos pequeñas, no habrá diferencia, pero en bases de datos grandes indudablemente no lo dejaría. Lamentablemente no sabemos el motor sobre el que se ejecutará, por lo que, ceñidos al estándar, no veo otra opción que esta. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#7
|
||||
|
||||
SOLUCIONADO
Corregí la clausula where, ya que es lo correcto. Porque? que pasa si añadiera un registro cuya fecha es anterior? al estar ordenado por ID, este seria mayor en un registro posterior.
Saludos
__________________
Última edición por MaMu fecha: 10-03-2008 a las 01:07:16. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Campos Calculados | Kaller | Tablas planas | 1 | 12-12-2006 01:11:13 |
Al insertar un registro me salta a otro anterior | judoboy | Firebird e Interbase | 2 | 31-01-2006 17:44:19 |
CAmpos calculados? | cmena | Conexión con bases de datos | 4 | 17-06-2004 12:54:51 |
No me inserta un registro nuevo, me modifica el anterior | vhirginia | Conexión con bases de datos | 10 | 11-05-2004 14:04:38 |
Campos Calculados | UTECYBER | OOP | 2 | 17-11-2003 15:00:27 |
|