Merge lp:~pexego/openerp-spain/6.1_347_fix_refund_amount into lp:~openerp-spain-team/openerp-spain/6.1

Proposed by Omar (Pexego)
Status: Merged
Merged at revision: 392
Proposed branch: lp:~pexego/openerp-spain/6.1_347_fix_refund_amount
Merge into: lp:~openerp-spain-team/openerp-spain/6.1
Diff against target: 12 lines (+1/-1)
1 file modified
l10n_es_aeat_mod347/wizard/calculate_mod347_records.py (+1/-1)
To merge this branch: bzr merge lp:~pexego/openerp-spain/6.1_347_fix_refund_amount
Reviewer Review Type Date Requested Status
Alejandro Santana Needs Information
Pedro Manuel Baeza code review and test Approve
Review via email: mp+205582@code.launchpad.net

Description of the change

El signo de los impuestos para facturas rectificativas está configurado como negativo, lo cual es correcto, pero esto provoca que el campo tax_amount de las lineas de impuestos tenga signo negativo, por lo tanto, para obtener el total abonado, el sistema hace base imponible de la factura + tax_amount y al ser negativo causa este descuadre, es decir: con una base imponible de 100 y un tax_amount de 21 el importe facturado será (100 + 21) 121 y el importe abonado si esta factura se abonara por completo sería (100 + (-21) 79 entonces el 347 nos pondría 121 - 79 = 42

Este merge proposal, arregla este comportamiento, de la misma forma que se hizo en openerp-spain/6.0 en la revisión 338

To post a comment you must log in.
Revision history for this message
Omar (Pexego) (omar7r) wrote :

Esta misma corrección habría que aplicarla en la 7.0, aunque el destino de la corrección es distinto, en el caso de la 7.0 será en el fichero mod347.py y en el método _calc_total_invoice

Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote :

Omar, gracias por solucionar este problema. He probado su funcionamiento y es correcto, refrendado además por estar ya operativo en la versión 6.0.

Hago ahora el mismo MP para la versión 7.0.

Gracias.

Un saludo.

review: Approve (code review and test)
Revision history for this message
Alejandro Santana (alejandrosantana) wrote :

Pregunta tal vez tonta, pero: ¿cuál es la diferencia entre 'account_invoice_tax.amount' y 'account_invoice_tax.tax_amount'?
No acabo de verlo, ya que veo que a veces a 'amount' se le asigna el valor de 'tax_amount'.

review: Needs Information
Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'l10n_es_aeat_mod347/wizard/calculate_mod347_records.py'
--- l10n_es_aeat_mod347/wizard/calculate_mod347_records.py 2013-07-18 16:08:37 +0000
+++ l10n_es_aeat_mod347/wizard/calculate_mod347_records.py 2014-02-10 12:59:31 +0000
@@ -50,7 +50,7 @@
50 amount = invoice.cc_amount_untaxed50 amount = invoice.cc_amount_untaxed
51 for tax_line in invoice.tax_line:51 for tax_line in invoice.tax_line:
52 if tax_line.name.find('IRPF') == -1:52 if tax_line.name.find('IRPF') == -1:
53 amount += tax_line.tax_amount53 amount += tax_line.amount
54 return amount54 return amount
5555
56 def _calculate_records(self, cr, uid, ids, context=None, recalculate=True):56 def _calculate_records(self, cr, uid, ids, context=None, recalculate=True):