Discussion:
[tryton-es] Informe "Imprimir libro mayor" devuelve balance anterior erróneo
Sergio Morillo
2018-07-13 09:06:30 UTC
Permalink
Hola,

nos hemos encontrado que el informe "Imprimir libro mayor" da un resultado
erróneo causado por el cálculo de balance anterior.
Tras revisar el código vemos que al obtener el balance o saldo anterior [1]
al ejercicio que queremos consultar, se le indica que sólo recoja
movimientos contables sin tercero. Esto hace que la consulta [2] no recoja
todos los movimientos anteriores y por tanto devuelve un balance erróneo.

El problema se solucionaría con el cambio:


init_values = Account.read_account_vals(accounts,
with_moves=False,

- exclude_party_moves=True)

+ exclude_party_moves=False)


Pero entiendo que si se puso el parámetro a True fue por algún motivo, por
eso quería debatirlo antes de hacer PR.

Gracias de antemano

[1]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/general_ledger.py?at=default&fileviewer=file-view-default#general_ledger.py-231
[2]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/common.py?at=default&fileviewer=file-view-default#common.py-100
Sergio Morillo
2018-07-13 09:30:42 UTC
Permalink
Post by Sergio Morillo
Hola,
nos hemos encontrado que el informe "Imprimir libro mayor" da un resultado
erróneo causado por el cálculo de balance anterior.
Tras revisar el código vemos que al obtener el balance o saldo anterior
[1] al ejercicio que queremos consultar, se le indica que sólo recoja
movimientos contables sin tercero. Esto hace que la consulta [2] no recoja
todos los movimientos anteriores y por tanto devuelve un balance erróneo.
init_values = Account.read_account_vals(accounts,
with_moves=False,
- exclude_party_moves=True)
+ exclude_party_moves=False)
Creo que el problema va más allá, porque revisando de nuevo el código justo
debajo de estas líneas se obtiene el balance anterior de la cuenta por
tercero [1].
La cuestión es que si un tercero X tiene balance anterior en una cuenta,
luego al componer la información [2] no tiene en cuenta si hay movimiento
con ese tercero en el ejercicio consultado, de modo que ese saldo se pierde.

[1]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/general_ledger.py?at=default&fileviewer=file-view-default#general_ledger.py-233
[2]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/general_ledger.py?at=default&fileviewer=file-view-default#general_ledger.py-256

Voy a implementar una solución a este tema y os digo algo en breve.
Post by Sergio Morillo
Pero entiendo que si se puso el parámetro a True fue por algún motivo, por
eso quería debatirlo antes de hacer PR.
Gracias de antemano
[1]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/general_ledger.py?at=default&fileviewer=file-view-default#general_ledger.py-231
[2]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/src/f0eda1f855d48bff76910a7e3c0f16efbce22143/common.py?at=default&fileviewer=file-view-default#common.py-100
Sergi Almacellas Abellana
2018-07-13 09:43:56 UTC
Permalink
Creo que el problema va más allá, porque revisando de nuevo el código
justo debajo de estas líneas se obtiene el balance anterior de la cuenta
por tercero [1].
La cuestión es que si un tercero X tiene balance anterior en una cuenta,
luego al componer la información [2] no tiene en cuenta si hay
movimiento con ese tercero en el ejercicio consultado, de modo que ese
saldo se pierde.
Hola Sergio,

Este modulo tiene bastante buena cobertura de tests, estaría bien que
añadas tambien una funció que compruebe que los saldos por tercero se
arrastran del ejercicio anterior.

Miraté el fichero de test, sinó recuerdo mal ya hay alguno que comprueba
que los saldos de años anteriores se estan arrastrando correctamente,
seria questión de copiar uno de esos para añadir la comprobación de que
el saldo por tercero se esta arrastrando correctamente.

Saludos,
Sergio Morillo
2018-07-13 10:01:12 UTC
Permalink
El viernes, 13 de julio de 2018, 11:43:49 (UTC+2), Sergi Almacellas
Post by Sergi Almacellas Abellana
Post by Sergio Morillo
Creo que el problema va más allá, porque revisando de nuevo el código
justo debajo de estas líneas se obtiene el balance anterior de la cuenta
por tercero [1].
La cuestión es que si un tercero X tiene balance anterior en una cuenta,
luego al componer la información [2] no tiene en cuenta si hay
movimiento con ese tercero en el ejercicio consultado, de modo que ese
saldo se pierde.
Hola Sergio,
Este modulo tiene bastante buena cobertura de tests, estaría bien que
añadas tambien una funció que compruebe que los saldos por tercero se
arrastran del ejercicio anterior.
Ok. Pero ahora mismo los tests fallan en "test_fiscalyear_not_closed" (en
4.2)
Post by Sergi Almacellas Abellana
Miraté el fichero de test, sinó recuerdo mal ya hay alguno que comprueba
que los saldos de años anteriores se estan arrastrando correctamente,
seria questión de copiar uno de esos para añadir la comprobación de que
el saldo por tercero se esta arrastrando correctamente.
Saludos,
Sergi Almacellas Abellana
2018-07-13 10:50:36 UTC
Permalink
Post by Sergio Morillo
Ok. Pero ahora mismo los tests fallan en
"test_fiscalyear_not_closed" (en 4.2)
Para mi habría que revisarlo primero porqué si el test falla es que
alguna cosa esta mal. (o el test o el programa ejjej)

De todos modos, si ves que es mucho trabajo siempre puedes añadir el
test en una nueva función y dejar este fallo como pendiente.
Sergio Morillo
2018-07-13 12:40:26 UTC
Permalink
El vie., 13 jul. 2018 a las 12:50, Sergi Almacellas Abellana (<
Post by Sergio Morillo
Ok. Pero ahora mismo los tests fallan en
"test_fiscalyear_not_closed" (en 4.2)
Para mi habría que revisarlo primero porqué si el test falla es que
alguna cosa esta mal. (o el test o el programa ejjej)
De todos modos, si ves que es mucho trabajo siempre puedes añadir el
test en una nueva función y dejar este fallo como pendiente.
Aquí va el PR para 4.2 [1] y 4.8 [2].
He corregido los tests en 4.2; en 4.8 sí funcionaban.

[1]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/pull-requests/9/consider-mixed-moves-with-and-without/diff
[2]
https://bitbucket.org/trytonspain/trytond-account_jasper_reports/pull-requests/10/consider-mixed-moves-with-and-without/diff
Loading...