Odoo中文网|Odoo实施培训

标题: odoo 设计模式 [打印本页]

作者: 店小2    时间: 2017-5-13 22:43
标题: odoo 设计模式
odoo 提供了一套开发框架和一系列好用的ERP模块。基于此,我们会在odoo框架odoo提供的模块基础上解决一系列公司管理上的信息化问题。而一个同样问题可以用几种不同的odoo框架提供的方法和odoo模块的功能解决。这种odoo框架的修改方法和odoo标准功能的组合,我称之为odoo设计模式。好的设计模式,可以大大的程序效率,也可以提高用户体验。
下文,我就以两个设计模式和一个具体问题,初步谈谈我对odoo的设计模式解决自动更新odoo数据类问题的看法。
希望可以抛砖引玉。
设计模式一 -- 手工更新+定时任务批量更新定义功能
  1.   @api.model
  2.     def scheduler_update_orders_draft(self):
  3.         draft_orders = self.search([('state','in',['draft'])])
  4.         draft_orders._compute_order_draft()
  5.         return
复制代码
定义按钮
  1. <button name="scheduler_update_orders_draft" string='Update Order Draft' />
复制代码
定义CRON
  1. <openerp>
  2.     <data>
  3.         <record id="scheduler_check_order_draft_job" model="ir.cron">
  4.             <field name="name">Check Draft Order</field>
  5.             <field name="model">sale.order</field>
  6.             <field name="function">scheduler_update_orders_draft</field>
  7.             <field name="args">([])</field>
  8.             <field name="interval_number">2</field>
  9.             <field name="interval_type">hours</field>
  10.             <field name="priority">10</field>
  11.             <field name="active">1</field>  
  12.         </record>
  13.     </data>
  14. </openerp>
复制代码
odoo 使用举例:







欢迎光临 Odoo中文网|Odoo实施培训 (http://www.chinaodoo.net/) Powered by Discuz! X3.2