示例代码:

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>

最新文章

  1. Java 查漏补缺
  2. 从H264码流中获取视频宽高 (SPS帧) 升级篇
  3. [转]Windows系统中监控文件复制操作的几种方式
  4. 循序渐进开发WinForm项目(1) --数据库设计和项目框架的生成
  5. dede调用文章里的图片
  6. 输出有序数组的中两个元素差值为指定值diff的两个元素
  7. VS2010连接SQLite数据库
  8. Delphi开发的IP地址修改工具
  9. BITED-Windows8应用开发学习札记之三:如何在Win8应用中实现数据绑定
  10. HDU 4571 Travel in time ★(2013 ACM/ICPC长沙邀请赛)
  11. 【原】数据库SQL语句入门
  12. memcached参数解释及常用命令
  13. 20155324《网络对抗技术》web安全基础实践
  14. ready
  15. HADOOP高可用机制
  16. Partition算法以及其应用详解上(Golang实现)
  17. mybatis学习 十一 缓存
  18. 不会几个框架,都不好意思说搞过前端: Node.js &amp; angular.js
  19. windows svn 客户端连不上linux svn server
  20. 解决问题知识点--mysql数据库

热门文章

  1. ansible 配置文件设置
  2. /etc/ld.so.conf.d/目录下文件的作用
  3. 序列化 json pickle shelve configparser
  4. xenserver 下载模板
  5. 基于VS2017C++的窗口编写
  6. slplunk原始数据和索引数据大小比较
  7. ADO.net 增删改查封装DBhelper
  8. Json中相关注解解释说明
  9. [SC] OpenSCManager 失败 5:拒绝访问
  10. thinkjs 安装笔记