2013-05-06 83 views
2

这里显示我需要添加批准工作流的模型类。如何添加批准工作流OpenERP 7

class bpl_work_update(osv.osv): 
    _name = "bpl.work.update" 
    _description = "BPL Work Update" 
    _columns = { 
     'bpl_company_id':fields.many2one('res.company', 'Company', help='Company'), 
     'ref_no': fields.char('Reference No', size=10,), 
     'offered_date': fields.date('Offered Date'), 
     # below lines are related to work update approve Workflow (i refer hr.holidays model for) 
     'state': fields.selection([('draft', 'To Submit'), ('cancel', 'Cancelled'), ('confirm', 'To Approve'), ('refuse', 'Refused'), ('validate1', 'Second Approval'), ('validate', 'Approved')], 
      'Status', readonly=True, track_visibility='onchange'), 
     'user_id': fields.many2one('hr.employee', 'Add records', invisible=False, readonly=True), 
     'manager_id': fields.many2one('hr.employee', 'First Approval', invisible=False, readonly=True), 

    } 
    _defaults = { 
       'bpl_company_id':_default_company, 
       'offered_date':fields.date.context_today, 
       'state': 'draft', 
       'user_id': lambda obj, cr, uid, context: uid, 
       } 

bpl_work_update() 

这里显示了我view.xml用文件(我得到这些工作流处理相关的只有在这里行)

<header> 
    <button string="Approve" name="validate" states="confirm" 
     type="workflow" groups="group_checkroll_user" class="oe_highlight" /> 
    <button string="Validate" name="second_validate" states="validate1" 
     type="workflow" groups="group_checkroll_manager" class="oe_highlight" /> 
    <button string="Refuse" name="refuse" states="confirm,validate,validate1" 
     type="workflow" groups="group_checkroll_manager" /> 
    <button string="Reset to New" name="set_to_draft" states="cancel,refuse" 
     type="object" groups="group_checkroll_manager" /> 
    <field name="state" widget="statusbar" statusbar_visible="draft,confirm,validate" 
     statusbar_colors='{"confirm":"blue","validate1":"blue","refuse":"red"}' /> 
</header> 

我不知道如何实施这种类型的审批工作流程。 我参考hr.holidays模型班,但无法得到清楚的想法。 请帮我添加关卡以批准我的工单要求。 &请给我一个链接,参考有关这种类型的工作流程创建..

现在,工作流程按钮添加到形式和正确显示,但如何处理这些。 这里是我的屏幕photo

回答

4

您可以参考以下链接: http://doc.openerp.com/v6.1/developer/07_workflows.html

您需要创建,你需要首先定义为工作流哪个对象创建,不同的活动一个新的workflow.xml文件,您希望在该工作流程和活动之间的不同转场中展示。首先你参考上面的链接,理解它,然后去开发它。

您通过在按钮中分配type =“workflow”来做了正确的事情。这里,按钮的名称正在作为转换中的信号工作。这意味着如果你的流程会得到这个信号,它将会在转换中检查它并从转换中检查它,它将触发该转换被创建的那个活动的功能。

+0

感谢Priyesh ,,你可以给我一个openerp插件的例子,以供参考 (更容易hr.holidays): - )\ – 2013-05-06 07:25:41

+1

请参阅idea模块。它的工作流程更容易理解! – 2013-05-06 07:31:34

+0

感谢Priyesh.now我参考了教程中的sale_workflow。 它更容易理解,当它完成后将通知和更新发布:-) – 2013-05-06 07:43:19

相关问题