Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
2 Replies
3482 Tampilan

In the CRM I would really like to automatically update the Probability field value for an opportunity after some action, like changing the Stage.   I can set up the Automated Action properly, but when to do the action, an error is presented and the Automated Action is not executed.  Any insight into how to update Probability field automatically?


Avatar
Buang

Share the error message? It is hard to guess ;)

Penulis

Here is the full error message:

RPC_ERROR
Odoo Server Error
Traceback (most recent call last):
File "/home/odoo/src/odoo/16.0/odoo/http.py", line 1587, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "/home/odoo/src/odoo/16.0/odoo/service/model.py", line 134, in retrying
result = func()
File "/home/odoo/src/odoo/16.0/odoo/http.py", line 1614, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "/home/odoo/src/odoo/16.0/odoo/http.py", line 1811, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "/home/odoo/src/odoo/16.0/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
result = endpoint(**request.params)
File "/home/odoo/src/odoo/16.0/odoo/http.py", line 700, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "/home/odoo/src/odoo/16.0/addons/web/controllers/dataset.py", line 42, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/home/odoo/src/odoo/16.0/addons/web/controllers/dataset.py", line 33, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/home/odoo/src/odoo/16.0/odoo/api.py", line 461, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/home/odoo/src/odoo/16.0/odoo/api.py", line 448, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "/home/odoo/src/odoo/16.0/addons/base_automation/models/base_automation.py", line 415, in write
action._process(records, domain_post=domain_post)
File "/home/odoo/src/odoo/16.0/addons/base_automation/models/base_automation.py", line 340, in _process
raise e
File "/home/odoo/src/odoo/16.0/addons/base_automation/models/base_automation.py", line 337, in _process
action_server.sudo().with_context(**ctx).run()
File "/home/odoo/src/odoo/16.0/odoo/addons/base/models/ir_actions.py", line 680, in run
res = runner(run_self, eval_context=eval_context)
File "/home/odoo/src/odoo/16.0/odoo/addons/base/models/ir_actions.py", line 557, in _run_action_object_write
self.env[self.model_id.model].browse(self._context.get('active_id')).write(res)
File "/home/odoo/src/odoo/16.0/addons/base_automation/models/base_automation.py", line 411, in write
write.origin(self.with_env(actions.env), vals, **kw)
File "/home/odoo/src/odoo/16.0/addons/crm/models/crm_lead.py", line 734, in write
if vals.get('probability', 0) >= 100 or not vals.get('active', True):
TypeError: '>=' not supported between instances of 'str' and 'int'

The above server error caused the following client error:
RPC_ERROR: Odoo Server Error
at makeErrorFromResponse (https://cghnulls.odoo.com/web/assets/debug/web.assets_backend.js:10408:19) (/web/static/src/core/network/rpc_service.js:34)
at XMLHttpRequest.<anonymous> (https://cghnulls.odoo.com/web/assets/debug/web.assets_backend.js:10461:27) (/web/static/src/core/network/rpc_service.js:87)

Penulis

I am out of the office Tuesday, May 2. I will respond when I return on Wednesday, May 3.

 

Best regards,

Tyler Steele

+1-520-850-9225

 

Jawaban Terbai

Hello Tyler Steele,

You can set Probability in CRM using Automated Action.

Find Example in comment.

Hope it will be helpful to you.

Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari

Avatar
Buang

For Example -

- Create an automated action by adding
name, model( Lead/Opportunity (crm.lead) as per your requirement),
trigger(update as per your requirement), Trigger fields (Stage (crm.lead) as per your requirement), apply on ( Stage > Stage Name = "Won" ),Action To Do ( Update the Record ).

- In Data to write
Field -> Probability (crm.lead), Evaluation Type -> Python expression, Value -> 99

Jawaban Terbai

Hello, your error is that the write method receive a string and not an int.
You can try to user python expression instead of value in your automated action:

With this 99 is an int and not a string.

If it's not working just comment an paste your error message, will try to reproduce in live.

Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
0
Okt 21
1922
8
Des 23
25576
3
Apr 24
2146
3
Feb 24
2006
1
Sep 23
2002