Skip to Content
Menu
This question has been flagged
2 Replies
1573 Views

After updating from version 16.0 to version 17.0, I encounter the following error when validating an Invoice:


RPC_ERROR

Odoo Server Error

Traceback (most recent call last):

  File "/home/odoo/src/odoo/17.0/odoo/tools/safe_eval.py", line 365, in safe_eval

    return unsafe_eval(c, globals_dict, locals_dict)

  File "ir.actions.server(727,)", line 1, in

  File "/home/odoo/src/odoo/17.0/addons/base_automation/models/base_automation.py", line 724, in write

    for old_vals in (records.read(list(vals)) if vals else [])

  File "/home/odoo/src/odoo/17.0/odoo/models.py", line 3537, in read

    self._origin.fetch(fields)

  File "/home/odoo/src/odoo/17.0/odoo/models.py", line 3792, in fetch

    fields_to_fetch = self._determine_fields_to_fetch(field_names, ignore_when_in_cache=True)

  File "/home/odoo/src/odoo/17.0/odoo/models.py", line 3859, in _determine_fields_to_fetch

    raise ValueError(f"Invalid field {field_name!r} on model {self._name!r}")

ValueError: Invalid field 'stage_id' on model 'sale.order'

 

During handling of the above exception, another exception occurred:

 

Traceback (most recent call last):

  File "/home/odoo/src/odoo/17.0/odoo/http.py", line 1765, in _serve_db

    return service_model.retrying(self._serve_ir_http, self.env)

  File "/home/odoo/src/odoo/17.0/odoo/service/model.py", line 133, in retrying

    result = func()

  File "/home/odoo/src/odoo/17.0/odoo/http.py", line 1792, in _serve_ir_http

    response = self.dispatcher.dispatch(rule.endpoint, args)

  File "/home/odoo/src/odoo/17.0/odoo/http.py", line 1996, in dispatch

    result = self.request.registry['ir.http']._dispatch(endpoint)

  File "/home/odoo/src/odoo/17.0/odoo/addons/base/models/ir_http.py", line 222, in _dispatch

    result = endpoint(**request.params)

  File "/home/odoo/src/odoo/17.0/odoo/http.py", line 722, in route_wrapper

    result = endpoint(self, *args, **params_ok)

  File "/home/odoo/src/odoo/17.0/addons/web/controllers/dataset.py", line 24, in call_kw

    return self._call_kw(model, method, args, kwargs)

  File "/home/odoo/src/odoo/17.0/addons/web/controllers/dataset.py", line 20, in _call_kw

    return call_kw(request.env[model], method, args, kwargs)

  File "/home/odoo/src/odoo/17.0/odoo/api.py", line 469, in call_kw

    model.env.flush_all()

  File "/home/odoo/src/odoo/17.0/odoo/api.py", line 719, in flush_all

    self._recompute_all()

  File "/home/odoo/src/odoo/17.0/odoo/api.py", line 715, in _recompute_all

    self[field.model_name]._recompute_field(field)

  File "/home/odoo/src/odoo/17.0/odoo/models.py", line 6869, in _recompute_field

    field.recompute(records)

  File "/home/odoo/src/odoo/17.0/odoo/fields.py", line 1367, in recompute

    apply_except_missing(self.compute_value, recs)

  File "/home/odoo/src/odoo/17.0/odoo/fields.py", line 1340, in apply_except_missing

    func(records)

  File "/home/odoo/src/odoo/17.0/odoo/fields.py", line 1389, in compute_value

    records._compute_field_value(self)

  File "/home/odoo/src/odoo/17.0/addons/base_automation/models/base_automation.py", line 764, in _compute_field_value

    automation._process(records, domain_post=domain_post)

  File "/home/odoo/src/odoo/17.0/addons/base_automation/models/base_automation.py", line 653, in _process

    action.with_context(**ctx).run()

  File "/home/odoo/src/odoo/17.0/odoo/addons/base/models/ir_actions.py", line 938, in run

    res = runner(run_self, eval_context=eval_context)

  File "/home/odoo/src/odoo/17.0/odoo/addons/base/models/ir_actions.py", line 770, in _run_action_code_multi

    safe_eval(self.code.strip(), eval_context, mode="exec", nocopy=True, filename=str(self))  # nocopy allows to return 'action'

  File "/home/odoo/src/odoo/17.0/odoo/tools/safe_eval.py", line 379, in safe_eval

    raise ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr))

ValueError: : "Invalid field 'stage_id' on model 'sale.order'" while evaluating

'record.write({"stage_id": 2})'

 

The above server error caused the following client error:

RPC_ERROR: Odoo Server Error

    at makeErrorFromResponse (https://digital-world2.odoo.com/web/assets/821d74f/web.assets_web.min.js:2873:163)

    at XMLHttpRequest. (https://digital-world2.odoo.com/web/assets/821d74f/web.assets_web.min.js:2877:13)



Avatar
Discard
Author Best Answer

Hi,


Thank you for your help. I indeed had an "Automated Action" whose action was to modify the "Stage_ID" field.

I made the necessary modifications and it's OK.


Avatar
Discard
Best Answer

Hi,

The error message indicates that there is an attempt to write to a field called stage_id on the model sale.order, but it's being considered invalid. This could be due to several reasons:

  1. Missing or Renamed Field: In Odoo 17.0, there might have been changes to the sale.order model, such as the removal or renaming of the stage_id field.
  2. Customizations or Extensions: If your Odoo instance has customizations or extensions that modify the sale.order model, those changes may be conflicting with the update process.

To address this issue, you should:

  • Review Customizations: Check if there are any customizations or extensions that modify the sale.order model, especially those related to the stage_id field. Ensure that they are compatible with Odoo 17.0.
  • Check Field Definitions: Verify the field definitions for stage_id in the sale.order model. Ensure that the field exists and is correctly defined.
  • Update Custom Modules: If you have custom modules or addons, ensure they are updated to be compatible with Odoo 17.0. This includes checking for any changes required due to removing or renaming fields.
  • Check for Third-Party Modules: If you're using third-party modules, ensure that they are compatible with Odoo 17.0 and that they do not conflict with the standard functionality


Hope it helpful

Avatar
Discard
Related Posts Replies Views Activity
4
May 25
2404
2
May 25
5741
1
Mar 25
1595
4
Mar 25
4384
3
Feb 25
5357