Incompatibilidad saldo ficha partner respecto a cierre localización española
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenERP Spanish Localization Project |
Invalid
|
High
|
Pedro Manuel Baeza |
Bug Description
La adaptación del cierre de la localización española para OpenERP provoca que el saldo debe y haber que se muestra en la ficha del partner sea incorrecto. Intento argumentarlo:
- El cálculo del saldo debe/haber que se muestra en la ficha se basa en sumar todos los movimientos contable NO CONCILIADOS TOTALMENTE a partir de los periodos de los ejercicios abiertos. Adjunto parte del código tratado en account/partner.py, función def _credit_
SELECT l.partner_id, a.type, SUM(l.debit-
- El proceso cierre/apertura estandar de OpenERP consiste en un asiento de apertura del ejercicio correspondiente en base a la suma de los saldos del ejercicio anterior, sin conciliarse dicho asiento con ningún otro.
- El proceso de cierre/apertura de la localización española genera un asiento de cierre y otro de apertura, y ambos SE CONCILIAN entre si. Esto provoca que cuando se calcula el saldo de la ficha del partner, NO TIENE EN CUENTA EL MOVIMIENTO DE APERTURA, dado que está conciliado, provocando que el saldo que se muestra en la ficha del partner, es erróneo y no coincide con el resumen de apuntes contables del ejercicio o los listados de mayor.
Este bug está comprobado y corroborado por varios clientes que lo han sufrido. Y dado que el problema viene por el tratamiento específico del cierre contable de la localización española, por eso lo he añadido aquí.
Changed in openerp-spain: | |
assignee: | nobody → Pedro Manuel Baeza (pedro.baeza) |
Changed in openerp-spain: | |
status: | New → Confirmed |
importance: | Undecided → High |
Changed in openerp-spain: | |
status: | Fix Committed → Invalid |
La solución que he encontrado pasa por eliminar la sentencia que filtra por los no conciliados totalmente, tratando así todos los apuntes a partir del primer ejercicio abierto. Es algo más lento, pero de momento no he encontrado otra más solución:
Es decir:
SELECT l.partner_id, a.type, SUM(l.debit- l.credit)
FROM account_move_line l
LEFT JOIN account_account a ON (l.account_id=a.id)
WHERE a.type IN ('receivable' ,'payable' )
AND l.partner_id IN %s
AND """ + query + """
GROUP BY l.partner_id, a.type