Hello,
For an unknown reason, I have an error raised on every screen.
Anybody can help ?
Is there any doc on how to debug the server errors ?
Here is the trace : "
Odoo Server Error
Traceback (most recent call last):
File "/opt/odoo/odoo-server/openerp/http.py", line 524, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/odoo/odoo-server/openerp/http.py", line 545, in dispatch
result = self._call_function(**self.params)
File "/opt/odoo/odoo-server/openerp/http.py", line 301, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/http.py", line 298, in checked_call
return self.endpoint(*a, **kw)
File "/opt/odoo/odoo-server/openerp/http.py", line 761, in __call__
return self.method(*args, **kw)
File "/opt/odoo/odoo-server/openerp/http.py", line 394, in response_wrap
response = f(*args, **kw)
File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 949, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 941, in _call_kw
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/mail/mail_message.py", line 569, in message_read
message_id_list.insert(0, self._message_read_dict(cr, uid, message_tree[key], context=context))
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/mail/mail_message.py", line 398, in _message_read_dict
'to_read': message.to_read,
File "/opt/odoo/odoo-server/openerp/fields.py", line 774, in __get__
self.determine_value(record)
File "/opt/odoo/odoo-server/openerp/fields.py", line 867, in determine_value
record._prefetch_field(self)
File "/opt/odoo/odoo-server/openerp/api.py", line 235, in wrapper
return new_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3178, in _prefetch_field
result = records.read(list(fnames), load='_classic_write')
File "/opt/odoo/odoo-server/openerp/api.py", line 235, in wrapper
return new_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/api.py", line 552, in new_api
result = method(self._model, cr, uid, self.ids, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/mail/mail_message.py", line 823, in read
res = super(mail_message, self).read(cr, uid, ids, fields=fields, context=context, load=load)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3091, in read
result = BaseModel.read(records, fields, load=load)
File "/opt/odoo/odoo-server/openerp/api.py", line 235, in wrapper
return new_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3123, in read
self._read_from_database(stored)
File "/opt/odoo/odoo-server/openerp/api.py", line 235, in wrapper
return new_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3287, in _read_from_database
res2 = self._columns[f].get(cr, self._model, ids, f, user, context=context, values=result)
File "/opt/odoo/odoo-server/openerp/osv/fields.py", line 1361, in get
result = self._fnct(obj, cr, uid, ids, name, self._arg, context)
File "/opt/odoo/odoo-server/addons/mail/mail_message.py", line 89, in _get_to_read
], context=context)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 1653, in search
return self._search(cr, user, args, offset=offset, limit=limit, order=order, context=context, count=count)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 4570, in _search
self._apply_ir_rules(cr, user, query, 'read', context=context)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 4447, in _apply_ir_rules
rule_where_clause, rule_where_clause_params, rule_tables = rule_obj.domain_get(cr, uid, self._name, mode, context=context)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/addons/base/ir/ir_rule.py", line 156, in domain_get
query = self.pool[model_name]._where_calc(cr, SUPERUSER_ID, dom, active_test=False)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 4392, in _where_calc
e = expression.expression(cr, user, domain, self, context)
File "/opt/odoo/odoo-server/openerp/osv/expression.py", line 646, in __init__
self.parse(cr, uid, context=context)
File "/opt/odoo/odoo-server/openerp/osv/expression.py", line 847, in parse
right_ids = comodel.search(cr, uid, [(path[1], operator, right)], context=context)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/calendar/calendar.py", line 1725, in search
return super(mail_message, self).search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 1653, in search
return self._search(cr, user, args, offset=offset, limit=limit, order=order, context=context, count=count)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/website_mail/models/mail_message.py", line 73, in _search
context=context, count=count, access_rights_uid=access_rights_uid)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/portal/mail_message.py", line 38, in _search
context=context, count=count, access_rights_uid=access_rights_uid)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/addons/mail/mail_message.py", line 621, in _search
context=context, count=count, access_rights_uid=access_rights_uid)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 4569, in _search
query = self._where_calc(cr, user, args, context=context)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 4392, in _where_calc
e = expression.expression(cr, user, domain, self, context)
File "/opt/odoo/odoo-server/openerp/osv/expression.py", line 646, in __init__
self.parse(cr, uid, context=context)
File "/opt/odoo/odoo-server/openerp/osv/expression.py", line 812, in parse
raise ValueError("Invalid field %r in leaf %r" % (left, str(leaf)))
ValueError: Invalid field 'state' in leaf "<osv.ExtendedLeaf: ('state', 'in', ['draft', 'sent', 'cancel']) on mail_message (ctx: )>"
"
Thanks for your help,
José
Hi jose, Please check the field "state" was defined in your xml file.If not please defined that in your view.
Hi José, have you found any solution for this? If so it would be appreciated to know what you did... Thanks
HI jose, are you inheriting mail_message view in your custom module? if yes then just add state field with invisible ="1", in your inherited view. and to get the xml file for this error, in the server console just before this error starts you can see the list of xml file loading, there check for the last *.xml file loading, and there you might get some clue about the error source.
what do you mean by state, can you write an example if it's okay with you?
because I'm checking everything and everything seems right