Reverese credit/debit values when cancelling a move
issue4538 review11901003
This commit is contained in:
1 parent
09cc054767
commit
50aca4ecfb
2 files changed
+22
-2
No files matched your search
@@ -12,6 +12,7 @@ def register():
|
||||
OpenChartAccountStart,
|
||||
AnalyticAccountEntry,
|
||||
Line,
|
||||
Move,
|
||||
MoveLine,
|
||||
module='analytic_account', type_='model')
|
||||
Pool.register(
|
||||
|
||||
@@ -6,9 +6,10 @@ from trytond.wizard import Wizard, StateAction
|
||||
from trytond import backend
|
||||
from trytond.pyson import Eval, PYSONEncoder
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.pool import Pool
|
||||
from trytond.pool import Pool, PoolMeta
|
||||
|
||||
__all__ = ['Line', 'MoveLine', 'OpenAccount']
|
||||
__all__ = ['Line', 'Move', 'MoveLine', 'OpenAccount']
|
||||
__metaclass__ = PoolMeta
|
||||
|
||||
|
||||
class Line(ModelSQL, ModelView):
|
||||
@@ -131,6 +132,24 @@ class Line(ModelSQL, ModelView):
|
||||
(self.account.rec_name,))
|
||||
|
||||
|
||||
class Move:
|
||||
__name__ = 'account.move'
|
||||
|
||||
def cancel(self, default=None):
|
||||
'Reverse credit/debit of analytic lines'
|
||||
pool = Pool()
|
||||
AnalyticLine = pool.get('analytic_account.line')
|
||||
cancel_move = super(Move, self).cancel(default)
|
||||
analytic_lines = []
|
||||
for line in cancel_move.lines:
|
||||
for analytic_line in line.analytic_lines:
|
||||
analytic_line.debit, analytic_line.credit = (
|
||||
analytic_line.credit, analytic_line.debit)
|
||||
analytic_lines.append(analytic_line)
|
||||
AnalyticLine.save(analytic_lines)
|
||||
return cancel_move
|
||||
|
||||
|
||||
class MoveLine(ModelSQL, ModelView):
|
||||
__name__ = 'account.move.line'
|
||||
analytic_lines = fields.One2Many('analytic_account.line', 'move_line',
|
||||
|
||||
Reference in new issue
Block a user