Merge lp:~openerp-dev/openobject-server/trunk-bug-1157560-tpa into lp:openobject-server

Proposed by Turkesh Patel (openERP)
Status: Needs review
Proposed branch: lp:~openerp-dev/openobject-server/trunk-bug-1157560-tpa
Merge into: lp:openobject-server
Diff against target: 14 lines (+3/-2)
1 file modified
openerp/addons/base/res/res_partner.py (+3/-2)
To merge this branch: bzr merge lp:~openerp-dev/openobject-server/trunk-bug-1157560-tpa
Reviewer Review Type Date Requested Status
Stefan Rijnhart (Opener) (community) Needs Information
OpenERP Core Team Pending
Review via email: mp+156778@code.launchpad.net

Description of the change

[FIX] Changing contact's company should not update former company's address with wrong data.

To post a comment you must log in.
Revision history for this message
Stefan Rijnhart (Opener) (stefan-opener) wrote :

Do I understand correctly that the data on *all siblings* is modified, so that it becomes different from the parent even if it has the setting 'Use address from the parent'?

review: Needs Information
4851. By Turkesh Patel (openERP)

[IMP] improved code.

Unmerged revisions

4851. By Turkesh Patel (openERP)

[IMP] improved code.

4850. By Turkesh Patel (openERP)

[FIX] when edit contact's company it sets the address of old company same as selected new company.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'openerp/addons/base/res/res_partner.py'
2--- openerp/addons/base/res/res_partner.py 2013-03-27 11:10:14 +0000
3+++ openerp/addons/base/res/res_partner.py 2013-04-03 12:49:20 +0000
4@@ -368,8 +368,9 @@
5 domain_children = [('parent_id', 'child_of', partner.id), ('use_parent_address', '=', True)]
6 update_ids = self.search(cr, uid, domain_children, context=context)
7 elif partner.parent_id and vals.get('use_parent_address', partner.use_parent_address):
8- domain_siblings = [('parent_id', '=', partner.parent_id.id), ('use_parent_address', '=', True)]
9- update_ids = [partner.parent_id.id] + self.search(cr, uid, domain_siblings, context=context)
10+ parent_id = vals['parent_id'] if vals.get('parent_id') else partner.parent_id.id
11+ domain_siblings = [('parent_id', '=', parent_id), ('use_parent_address', '=', True)]
12+ update_ids = [parent_id] + self.search(cr, uid, domain_siblings, context=context)
13 self.update_address(cr, uid, update_ids, vals, context)
14 return super(res_partner,self).write(cr, uid, ids, vals, context=context)
15