在实际业务中,会有需要定时抓取别的系统单据的业务操作。那么如何在odoo里面创建一个可以定时执行的任务呢。下面请看代码:
<record id="sync_wfz_sync_product_order" model="ir.cron">
<field name="name">采购收货单同步定时任务</field>
<field name="model_id" ref="model_wfz_sync_product_order"/>
<field name="state">code</field>
<field name="code">model.importNowDate()</field>
<field name="user_id" ref="base.user_root"/>
<field name="interval_number">30</field>
<field name="interval_type">minutes</field>
<field name="numbercall">-1</field>
<field eval="False" name="doall"/>
</record>
在record标签里面创建一个定时任务:
model_id:为需要绑定的模块名,格式为model_模块。
interval_number:多久执行一次
interval_type:执行的时间单位,里面的枚举值对应的有:
interval_type = fields.Selection([
('minutes', 'Minutes'),
('hours', 'Hours'),
('days', 'Days'),
('weeks', 'Weeks'),
('months', 'Months')
], string='Interval Type')
numbercall:执行的次数。-1为无次数限制