コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
3777 ビュー

Odoo 14 EE

I have a Scheduled Action.  In the Python Code, I would like to call the action itself (the record of ir.cron) to get ir_cron.lastcall so can pass the value of the last time it ran to the method (e.g. method.my_custom_method(lastcall)).

How can I do this?

アバター
破棄
最善の回答
cron_name = 'your_action_name'
cron_id = models.execute_kw(db, uid, password, 'ir.cron', 'search', [
[['cron_name', '=', cron_name]]
])

That should give you the id of your action.


アバター
破棄
最善の回答

I've tried logging the nextcall field on the ir.cron

next = env['ir.cron'].browse(37).read(['nextcall'])
log(str(next)), level='info')

while setting the initial date to somewhere in the past and let it repeat missed intervals. I did get 24 log results but in all the logs the "nextcall" values were the same

[{'id': 37, 'nextcall': datetime.datetime(2022, 7, 25, 23, 0)}]

Next I'll look for a context
アバター
破棄

Yes, because you hardcoded the id, so you will only get results of that same action.

関連投稿 返信 ビュー 活動
0
3月 25
1521
4
4月 24
174388
0
12月 23
2292
5
7月 25
228541
1
12月 22
3426