From e48c0c8ef29dba245e7fba658b993e282a07fdd7 Mon Sep 17 00:00:00 2001 From: "RGA (OpenERP)" Date: Fri, 13 May 2011 15:51:19 +0530 Subject: [PATCH 1/2] [Fix] Set default value for current login user lp bug: https://launchpad.net/bugs/780418 fixed bzr revid: rga@tinyerp.com-20110513102119-aw4n336m5wcm0c9o --- openerp/addons/base/ir/ir_values.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/openerp/addons/base/ir/ir_values.py b/openerp/addons/base/ir/ir_values.py index 79b1b5e338c..00e0dc6b7df 100644 --- a/openerp/addons/base/ir/ir_values.py +++ b/openerp/addons/base/ir/ir_values.py @@ -172,8 +172,10 @@ class ir_values(osv.osv): else: where.append('res_id=%s') params.append(res_id) - - where.append('(user_id=%s or (user_id IS NULL)) order by id') + order = 'id' + if key == 'default': + order = 'user_id' + where.append('(user_id=%s or (user_id IS NULL)) order by '+ order) params.append(uid) clause = ' and '.join(where) cr.execute('select id,name,value,object,meta, key from ir_values where ' + clause, params) From b9b3251af54c455fb031c6f1d7ce944e96344e09 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Tue, 17 May 2011 16:15:52 +0200 Subject: [PATCH 2/2] [IMP] ir_value: forgot to add some comment. bzr revid: vmt@openerp.com-20110517141552-3hrj3itt7axxjol0 --- openerp/addons/base/ir/ir_values.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openerp/addons/base/ir/ir_values.py b/openerp/addons/base/ir/ir_values.py index 558029cca4e..68a5576c25a 100644 --- a/openerp/addons/base/ir/ir_values.py +++ b/openerp/addons/base/ir/ir_values.py @@ -176,7 +176,9 @@ class ir_values(osv.osv): if key == 'default': # Make sure we get first the values for specific users, then # the global values. The map/filter below will retain the first - # value for any given name. + # value for any given name. The 'order by' will put the null + # values last; this may be postgres specific (it is the + # behavior in postgres at least since 8.2). order = 'user_id' where.append('(user_id=%s or (user_id IS NULL)) order by '+ order) params.append(uid)