Saldos Contabilidad
En mi caso:
PUC = Tabla con el Plan Unico de Cuentas (PC en el ejemplo de figcg02).
TRANSACCCIONES = Tabla que contiene los movimientos de las cuentas ( DA en el ejemplo de figcg02).
En General la forma en que figcg02 expone me funcionó correctamente, solo realicé dos cambios, en el caso de la sentencia que pones (SUM(DA.Debe-DA.Haber) As SALDO, no me da ningún error pero no funciona o sea crea el campo Saldo pero lo deja en blanco, tambien probé con (SUM(DA.Debe)- SUM(DA.Haber)) As Saldo y ocurre exactamente lo mismo. Este problema lo resolví asignando un campo debe, uno haber y adicionando un campo calculado Saldo donde en el evento OnCalcFields determino el saldo.
También cambié la linea WHERE PC.Codigo = left(DA.Codigo,len(PC.Codigo)) POR WHERE TR.Cuenta STARTING WITH PUC.Cuenta, Que aunque las dos hacen lo mismo, según leí la instrucción Starting With utiliza índices, es mas rápida y me parece mas sencillo.
El código me quedó asi:
SELECT PUC.Cuenta, PUC.Descripcion Sum(TR.Debe) As Debe, Sum(TR.Haber) As Haber
FROM PUC, Transacciones TR
WHERE TR.Cuenta STARTING WITH PUC.Cuenta
GROUP BY PUC.Cuenta, PUC.Descripcion
ORDER BY PUC.Cuenta;
Gracias a todos, especialmente a figcg02.
__________________
Saludos
Seara2005
|