Xavier ALT badc8fb90d [FIX] hr_timesheet: fix KeyError a timesheet on task wo/ analytic set
To reproduce on runbot:
- go a to an existing task
- clear the "Analytic account" field
- add a timesheet line
- save

It then crash with the following error:

```
RPC_ERROR
Odoo Server Error
Traceback (most recent call last):
  File "/data/build/odoo/odoo/http.py", line 1698, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/data/build/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/data/build/odoo/odoo/http.py", line 1725, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/data/build/odoo/odoo/http.py", line 1922, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/data/build/odoo/addons/website/models/ir_http.py", line 234, in _dispatch
    response = super()._dispatch(endpoint)
  File "/data/build/odoo/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
    result = endpoint(**request.params)
  File "/data/build/odoo/odoo/http.py", line 715, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/data/build/odoo/addons/web/controllers/dataset.py", line 28, in call_kw
    return self._call_kw(model, method, args, kwargs)
  File "/data/build/odoo/addons/web/controllers/dataset.py", line 24, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/data/build/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/data/build/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/data/build/enterprise/industry_fsm_stock/models/project_task.py", line 101, in write
    result = super().write(vals)
  File "/data/build/enterprise/helpdesk_fsm/models/project_task.py", line 45, in write
    res = super().write(vals)
  File "/data/build/odoo/addons/project_sms/models/project_task.py", line 25, in write
    res = super().write(vals)
  File "/data/build/enterprise/project_enterprise/models/project_task.py", line 288, in write
    res = super().write(vals)
  File "/data/build/odoo/addons/hr_timesheet/models/project.py", line 385, in write
    res = super(Task, self).write(values)
  File "/data/build/odoo/addons/project/models/project.py", line 2050, in write
    result = super().write(vals)
  File "/data/build/odoo/addons/mail/models/mail_activity_mixin.py", line 241, in write
    return super(MailActivityMixin, self).write(vals)
  File "/data/build/odoo/addons/rating/models/rating_mixin.py", line 101, in write
    result = super(RatingMixin, self).write(values)
  File "/data/build/odoo/addons/mail/models/mail_thread.py", line 311, in write
    result = super(MailThread, self).write(values)
  File "/data/build/odoo/odoo/models.py", line 3813, in write
    field.write(self, value)
  File "/data/build/odoo/odoo/fields.py", line 4168, in write
    self.write_batch([(records, value)])
  File "/data/build/odoo/odoo/fields.py", line 4189, in write_batch
    self.write_real(records_commands_list, create)
  File "/data/build/odoo/odoo/fields.py", line 4369, in write_real
    flush()
  File "/data/build/odoo/odoo/fields.py", line 4325, in flush
    comodel.create(to_create)
  File "<decorator-gen-368>", line 2, in create
  File "/data/build/odoo/odoo/api.py", line 410, in _model_create_multi
    return create(self, arg)
  File "/data/build/odoo/addons/hr_timesheet/models/hr_timesheet.py", line 142, in create
    vals_list = self._timesheet_preprocess(vals_list)
  File "/data/build/enterprise/helpdesk_timesheet/models/analytic.py", line 61, in _timesheet_preprocess
    return super(AccountAnalyticLine, self)._timesheet_preprocess(vals_list)
  File "/data/build/odoo/addons/hr_timesheet/models/hr_timesheet.py", line 331, in _timesheet_preprocess
    account = account_per_id[account_id]
KeyError: False

The above server error caused the following client error:
null
```

closes odoo/odoo#119597

X-original-commit: b86fa6a72cc5eaeb0245cf2092eefde09226aa12
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-04-25 14:07:35 +02:00
2023-04-13 17:57:45 +02:00
2023-04-25 14:07:15 +02:00
…
…
…
…
2023-01-03 13:16:02 +01:00

Build Status Tech Doc Help Nightly Builds

Odoo

Odoo is a suite of web based open source business apps.

The main Odoo Apps include an Open Source CRM, Website Builder, eCommerce, Warehouse Management, Project Management, Billing & Accounting, Point of Sale, Human Resources, Marketing, Manufacturing, ...

Odoo Apps can be used as stand-alone applications, but they also integrate seamlessly so you get a full-featured Open Source ERP when you install several Apps.

Getting started with Odoo

For a standard installation please follow the Setup instructions from the documentation.

To learn the software, we recommend the Odoo eLearning, or Scale-up, the business game. Developers can start with the developer tutorials

S
Description
No description provided
Readme LGPL-3.0
3.4 GiB
Languages
Python 49.6%
JavaScript 47.8%
SCSS 2%
CSS 0.3%
HTML 0.2%