openerp学习笔记 计划动作、计划执行(维护计划)


示例代码:
data/scheduler.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data
noupdate="0">
<record forcecreate="True"
id="ir_cron_dispatch_service_card_scheduler_action"
model="ir.cron">
<field
name="name">自动更新服务卡过期状态</field>
<field eval="True" name="active"
/>
<field name="user_id"
ref="base.user_root"/>
<field
name="interval_number">12</field>
<field
name="interval_type">hours</field>
<field
name="numbercall">-1</field>
<field eval="True"
name="doall"/>
<field eval="'dispatch.service_card'"
name="model"/>
<field eval="'process_change_state'"
name="function"/>
<field eval="'()'"
name="args"/>
<field
name="priority">0</field>
</record>
</data>
</openerp>
service_card.py
#自动更新服务卡过期状态,每天早上自动执行一次
def
process_change_state(self, cr, uid, ids=None,
context=None):
service_card_ids=self.search(cr,uid,[("state","=",'1')],
context=context)
if
service_card_ids:
DATE_FORMAT =
"%Y-%m-%d"
try:
for rec in self.browse(cr, uid, service_card_ids,
context=context):
if rec.remaining_times == 0:
#已用完
self.write(cr, uid, rec.id,
{'state':'2'})
elif rec.due_date < datetime.datetime.strftime(datetime.date.today(),
DATE_FORMAT):
#已过期
self.write(cr, uid, rec.id,
{'state':'3'})
except
Exception:
_logger.exception("更新服务卡过期状态出现异常!(dispatch.service_card.process_change_state)")
return False
backup_data.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data
noupdate="1">
<record forcecreate="True"
id="ir_cron_dispatch_auto_backups_scheduler_action"
model="ir.cron">
<field
name="name">自动备份数据库</field>
<field eval="True" name="active"
/>
<field name="user_id"
ref="base.user_root"/>
<field
name="interval_number">8</field>
<field
name="interval_type">hours</field>
<field
name="numbercall">-1</field>
<field eval="False"
name="doall"/>
<field eval="'db.backup'"
name="model"/>
<field eval="'schedule_backup'"
name="function"/>
<field eval="'()'"
name="args"/>
<field
name="priority">0</field>
</record>
</data>
</openerp>
openerp学习笔记 计划动作、计划执行(维护计划)的更多相关文章
- JVM学习笔记:字节码执行引擎
JVM学习笔记:字节码执行引擎 移步大神贴:http://rednaxelafx.iteye.com/blog/492667
- Linux学习笔记之Linux计划任务Crontab
0x00 cron 简介 cron 是 UNIX, SOLARIS,LINUX 下的一个十分有用的工具.通过 cron 脚本能使计划任务定期地在系统后台自动运行. 0x01 cron 命令 cront ...
- 重温JSP学习笔记--JSP动作标签
上一篇笔记写的是jsp的三个指令九个内置对象,这篇随笔开始写jsp的动作标签,动作标签是由服务器(Tomcat)来解释执行,与java代码一样,都是在服务器端执行的,jsp动作标签有十几多个,这里只写 ...
- AMQ学习笔记 - 11. Spring-JmsTemplate之执行
概述 前面我们分别介绍了发送.接收和浏览,这三个的实现都依赖于将要介绍的执行. 执行算是一个相对比较底层的方法系列,一般情况下,我们不需要直接面向将要介绍的方法. 执行 1.关于回调接口 在讲执行之前 ...
- openerp学习笔记 模块结构分析
以OpenERP7.0中的 hr_expense 模块为例: 如图中代码所示: __init__.py :和普通 Python 模块中的__init__.py 作用相同,主要用于引用模块根目录下的.p ...
- 1.2(学习笔记) JSP动作元素
动作元素 jsp:useBean:根据指定类实例化一个对象,类似Preson per = new Preson(); <jsp:useBean id="对象名" class ...
- Linux学习笔记(三):系统执行级与执行级的切换
1.Linux系统与其它的操作系统不同,它设有执行级别.该执行级指定操作系统所处的状态.Linux系统在不论什么时候都执行于某个执行级上,且在不同的执行级上执行的程序和服务都不同,所要完毕的工作和所要 ...
- 《Linux内核设计的艺术》学习笔记(六)执行setup.s
参考资料 1. 8259A可编程中断控制器 jmpi , SETUPSEG // 0x90200 到这里,bootsect.s的执行就算结束了.控制权转移到了setup.s文件的手中. setup程序 ...
- spring学习笔记--quartz和定时任务执行
前言: 最近要写一个定时任务, 用于同步数据. 以往这种涉及数据库操作的定时脚本, 都会采用python+crontab的方式来实现. 这次画风大转, 决定试试用spring+quartz来实现一下. ...
随机推荐
- PAT Basic 1056 组合数的和 (15 分)
给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字.要求所有可能组合出来的 2 位数字的和.例如给定 2.5.8,则可以组合出:25.28.52.58.82.85 ...
- javascript基本语法点
1. getElementById例:<input type="text" id="user" />则getElementById('user'). ...
- Java nio 理解
Java nio 称为Java new IO ,对Java io而言的.他有两个主要的概念:缓存.通道. 在程序中,数据的来源或写入,要么网络.要么硬盘.所有通道分为:文件通道.TCP通道.UDP通道 ...
- Javac可以编译,Java显示找不到或无法加载主类
运行时候加入完整包名.
- Flutter入门(三)-底部导航+路由
* StatefulWidget 如果想改变页面中的数据就要用到StatefulWidget,之前自定义组件继承的StatelessWidget是不能动态修改页面数据的 //自定义有状态组件 clas ...
- Java-UploadHelper工具类
/** * 上传文件类 */ import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java. ...
- Hadoop-No.7之行键
和哈希表类比,HBase中的行键类似于哈希表中的键.要构造一个良好的HBase模式,关键之一就是选择一个合适的行键. 1 记录检索 行键是HBase中检索记录所使用的键.HBase记录含有的列在数量上 ...
- JAVA-IO流大文件拷贝
package com.test.io; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ...
- BZOJ 1107: [POI2007]驾驶考试egz / Luogu P3463 [POI2007]EGZ-Driving Exam (树状数组 LIS)
能从iii走到所有跑道 相当于 能从iii走到111和nnn. 边反向后就相当于 能从111和nnn走到iii. 为了方便叙述,把111~nnn叫做x坐标,111~(m+1)(m+1)(m+1)叫做y ...
- sysbench简易使用
sysbench简易使用 由于测试需要,需要用到sysbench这个工具.推荐简便使用. # yum 安装 yum install sysbench 创建数据库 CREATE DATABASE `sb ...