OCA / contract

GNU Affero General Public License v3.0
170 stars 522 forks source link

[12.0] [BUG]Expected singleton: contract.contract #508

Closed valero1120 closed 4 years ago

valero1120 commented 4 years ago

Odoo Server Error Traceback (most recent call last): File "/home/john/Developments/odoo12/odoo/odoo/models.py", line 4741, in ensure_one _id, = self._ids ValueError: too many values to unpack (expected 1)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/john/Developments/odoo12/odoo/odoo/tools/safe_eval.py", line 350, in safe_eval return unsafe_eval(c, globals_dict, locals_dict) File "", line 1, in File "/home/john/Developments/odoo12/extra-addons/oca/contract/contract/models/contract.py", line 483, in cron_recurring_create_invoice return contracts_to_invoice._recurring_create_invoice(date_ref) File "/home/john/Developments/odoo12/extra-addons/oca/contract/contract_sale_invoicing/models/contract.py", line 19, in _recurring_create_invoice if not self.invoicing_sales: File "/home/john/Developments/odoo12/odoo/odoo/fields.py", line 1003, in get record.ensure_one() File "/home/john/Developments/odoo12/odoo/odoo/models.py", line 4744, in ensure_one raise ValueError("Expected singleton: %s" % self) ValueError: Expected singleton: contract.contract(4, 7)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 656, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 314, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "/home/john/Developments/odoo12/odoo/odoo/tools/pycompat.py", line 87, in reraise raise value File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 698, in dispatch result = self._call_function(self.params) File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 346, in _call_function return checked_call(self.db, *args, *kwargs) File "/home/john/Developments/odoo12/odoo/odoo/service/model.py", line 98, in wrapper return f(dbname, args, kwargs) File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 339, in checked_call result = self.endpoint(*a, kw) File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 941, in call return self.method(*args, *kw) File "/home/john/Developments/odoo12/odoo/odoo/http.py", line 519, in response_wrap response = f(args, kw) File "/home/john/Developments/odoo12/odoo/addons/web/controllers/main.py", line 966, in call_button action = self._call_kw(model, method, args, {}) File "/home/john/Developments/odoo12/odoo/addons/web/controllers/main.py", line 954, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/home/john/Developments/odoo12/odoo/odoo/api.py", line 759, in call_kw return _call_kw_multi(method, model, args, kwargs) File "/home/john/Developments/odoo12/odoo/odoo/api.py", line 746, in _call_kw_multi result = method(recs, *args, **kwargs) File "/home/john/Developments/odoo12/odoo/odoo/addons/base/models/ir_cron.py", line 76, in method_direct_trigger self.sudo(user=cron.user_id.id).ir_actions_server_id.run() File "/home/john/Developments/odoo12/odoo/odoo/addons/base/models/ir_actions.py", line 553, in run res = func(action, eval_context=eval_context) File "/home/john/Developments/odoo12/odoo/addons/website/models/ir_actions.py", line 57, in run_action_code_multi res = super(ServerAction, self).run_action_code_multi(action, eval_context) File "/home/john/Developments/odoo12/odoo/odoo/addons/base/models/ir_actions.py", line 444, in run_action_code_multi safe_eval(action.sudo().code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action' File "/home/john/Developments/odoo12/odoo/odoo/tools/safe_eval.py", line 373, in safe_eval pycompat.reraise(ValueError, ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr)), exc_info[2]) File "/home/john/Developments/odoo12/odoo/odoo/tools/pycompat.py", line 86, in reraise raise value.with_traceback(tb) File "/home/john/Developments/odoo12/odoo/odoo/tools/safe_eval.py", line 350, in safe_eval return unsafe_eval(c, globals_dict, locals_dict) File "", line 1, in File "/home/john/Developments/odoo12/extra-addons/oca/contract/contract/models/contract.py", line 483, in cron_recurring_create_invoice return contracts_to_invoice._recurring_create_invoice(date_ref) File "/home/john/Developments/odoo12/extra-addons/oca/contract/contract_sale_invoicing/models/contract.py", line 19, in _recurring_create_invoice if not self.invoicing_sales: File "/home/john/Developments/odoo12/odoo/odoo/fields.py", line 1003, in get record.ensure_one() File "/home/john/Developments/odoo12/odoo/odoo/models.py", line 4744, in ensure_one raise ValueError("Expected singleton: %s" % self) ValueError: <class 'ValueError'>: "Expected singleton: contract.contract(4, 7)" while evaluating 'model.cron_recurring_create_invoice()'

pedrobaeza commented 4 years ago

Fix in progress in #505

pedrobaeza commented 4 years ago

I'm going to close this as there's a PR in progress, for cleaning up the repo.