Yogesh(Open ERP) has proposed merging
lp:~openerp-dev/openobject-server/trunk-bug-783961-ysa into
lp:openobject-server.
Requested reviews:
Naresh(OpenERP) (nch-openerp)
Related bugs:
Bug #783961 in OpenERP Server: "dead reference to sales order in opportunity
causes permission error"
https://bugs.launchpad.net/openobject-server/+bug/783961
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-bug-783961-ysa/+merge/65770
--
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-bug-783961-ysa/+merge/65770
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-server/trunk-bug-783961-ysa.
=== modified file 'openerp/osv/fields.py'
--- openerp/osv/fields.py 2011-06-17 07:26:08 +0000
+++ openerp/osv/fields.py 2011-06-24 08:49:35 +0000
@@ -148,9 +148,23 @@
class reference(_column):
_type = 'reference'
+ _classic_read = False # post-process to handle missing target
+
def __init__(self, string, selection, size, **args):
_column.__init__(self, string=string, size=size, selection=selection, **args)
+ def get(self, cr, obj, ids, name, uid=None, context=None, values=None):
+ result = {}
+ # copy initial values fetched previously.
+ for row in values:
+ result[row['id']] = row[name]
+ # verify target object exists
+ for id, value in result.iteritems():
+ if value:
+ model, res_id = value.split(',')
+ if not obj.pool.get(model).exists(cr, uid, [int(res_id)], context=context):
+ result[id] = False
+ return result
class char(_column):
_type = 'char'
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp