Odoo Help
Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM
|
e-Commerce
|
Accounting
|
Inventory
|
PoS
|
Project management
|
MRP
|
etc.
scheduled actions not working?
Hello everyone,
I wrote a Scheduler actions like below, but not working...
in crm_lead.py
def compute_lead_type(self, cr, uid, ids, name, args, context=None):
for record in self.browse(cr, uid, ids, context=context):
lead_type=record.type
lead_id=record.id
if lead_type=='lead': # Checks the lead ID is converted to opportunity or not
lead_crm_phonecall_id = self.pool.get('crm.phonecall').search(cr, uid, [('opportunity_id', '=', lead_id)], context=context) # Checks the lead is scheduled or not
if lead_crm_phonecall_id: # Checks the lead ID is available or not in crm.phonecall
message_text='This Lead is scheduled'
else:
message_text='This Lead is Not scheduled'
message = _('Hello this is testing')
self.message_post(cr, uid, [lead_id], message, context=context)
return
in crm_lead_view.xml
<record forcecreate="True" id="ir_cron_scheduler_checking_lead"
model="ir.cron">
<field name="name">Checking status of lead</field>
<field eval="True" name="active" />
<field name="interval_number">1</field>
<field name="interval_type">minutes</field>
<field name="numbercall">-1</field>
<field eval="False" name="doall" />
<field eval="'crm.lead'" name="model" />
<field eval="'compute_lead_type'" name="function" />
<field eval="'()'" name="args" />
</record>
This is not working, please help me,
thanks in advance...
It is not working because you are doing it worng. You do not have value of ids while running cron job so you need to assign it False. Change your method defination like
def compute_lead_type(self, cr, uid, ids = False, name, args, context=None):
search_ids = self.pool.get('object.name').search(cr, uid, [])
for ids in search_ids:
# write your logic here
return True
and it will start working. sometimes if it doesn't start. go to scheduler menu click on edit button of scheduler and save it again. it will start working :)
I think you need to pass "ids" argument's value from cron record. Because from your code's first line,
for record in self.browse(cr, uid, ids, context=context):
If program doesn't find ids then it will skip that loop. That's why your program doesn't working !
Still let me know anything is still confusing.
About This Community
This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.
RegisterOdoo Training Center
Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.
Test it nowQuestion tools
Stats
Asked: 6/3/14, 9:03 AM |
Seen: 4696 times |
Last updated: 4/24/15, 8:55 AM |
i am using v7