odoo12:定时任务

odoo12:定时器任务

设置--技术-自动化-安排的动作 

代码如下:

  <record  id="ir_cron_scheduler_action" model="ir.cron">
            <field name="name">定时器</field>
            <field name="model_id" ref="model_positions"/>
            <field name="state">code</field>
            <field name="code">model.check_valid_positions()</field>
            <field name="interval_number">1</field>
            <field name="interval_type">days</field>
            <field name="numbercall">-1</field>
            <field eval="False" name="doall"/>

        </record>

让我们来分析下定时任务定义的代码,这里的ir.cron模块就是odoo为所有定时任务而专门准备的模型。换句话说往这个表里添加一行数据就是添加了一个定时任务。

name
定时任务名称

model_id
一般命名为:model加模块名

interval_number
任务执行的频次,和interval_type字段一起决定了任务执行的间隔时间,比如这里为interval_number为2,interval_type为minutes,就是任务每2分钟执行一次。

interval_type
任务执行频次的单位,可选项有: minutes,hours,days,work_days,weeks,months,意思很好理解,work_days是星期几执行。

numbercall
循环运行的次数,比如你填10,那么任务执行10次后将不再执行,这里-1代表一直执行下去。

doall
如果在服务器重启期间错过了执行时机,是否再次补充执行。

model
任务方法所在模块

function
任务方法,与model一起决定了任务时机到来时,调用哪个方法执行。

猜你喜欢

转载自blog.csdn.net/qq_43239192/article/details/87982297