From 6d3855e9dc5031b3a87d730f79fcecfda93d5bc6 Mon Sep 17 00:00:00 2001 From: Humberto Arocha Date: Thu, 17 Jul 2014 12:14:58 -0430 Subject: [PATCH] [FIX] account: remove orphan analytic lines If the analytic account is not present on an entry, still removes the Analytic Journal Items linked to it. Fixes #1194, opw 610784 --- addons/account/account_move_line.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py index cf14d465f47..756c40ea612 100644 --- a/addons/account/account_move_line.py +++ b/addons/account/account_move_line.py @@ -190,11 +190,11 @@ class account_move_line(osv.osv): def create_analytic_lines(self, cr, uid, ids, context=None): acc_ana_line_obj = self.pool.get('account.analytic.line') for obj_line in self.browse(cr, uid, ids, context=context): + if obj_line.analytic_lines: + acc_ana_line_obj.unlink(cr,uid,[obj.id for obj in obj_line.analytic_lines]) if obj_line.analytic_account_id: if not obj_line.journal_id.analytic_journal_id: raise osv.except_osv(_('No Analytic Journal!'),_("You have to define an analytic journal on the '%s' journal!") % (obj_line.journal_id.name, )) - if obj_line.analytic_lines: - acc_ana_line_obj.unlink(cr,uid,[obj.id for obj in obj_line.analytic_lines]) vals_line = self._prepare_analytic_line(cr, uid, obj_line, context=context) acc_ana_line_obj.create(cr, uid, vals_line) return True