OpenERP工作流浅析
来源:互联网 发布:jstor数据库怎么查询 编辑:程序博客网 时间:2024/06/16 22:15
对象和视图修改
1. 添加xml文件引用
在__openerp__.py文件data中添加工作流文件引用。
2. 对象修改
在车辆管理对象中添加state字段,保存车辆审批状态。
可以看出,车辆有草稿,待审批,审批通过和审批拒绝四个状态。
3. 视图修改
在列表中添加atate字段,在表单中增加下述三个按钮。
工作流定义
model:固定取值"workflow"
id:任意值,唯一标识本工作流
name:工作流的名称,任意定义
osv:工作流关联的对象类型,是OpenERP模块中定义的对象名。
on_create:每当系统新产生一个osv 中定义的对象的实例时候,是否对应的产生一个和该对象实例关联的工作流实例。默认是True。
活动
model:固定取值workflow.activity
wkf_id:活动所属的工作流id
name: 活动名称,任意值
kind:活动类型,有Dummy, Function, Subflow,Stop All 四种。Kind表明如果流程到达本节点,系统应执行的动作类别。Function 表示执行action中定义的python代码。通常action中定义一个write方法,修改流程关联的对象的状态。
flow_start:表示流程的开始节点。
flow_stop:表示流程的结束节点。
注:代码只列出草稿活动状态。
迁移
act_from:本迁移的起始节点,引用之前定义的Activity。
act_to:本迁移的结束节点,引用之前定义的Activity。
group_id:权限组,表示只有该权限组可以触发本迁移,提交迁移不涉及权限,审批迁移需要加入权限控制。
signal: 触发本迁移的信号,表示,如果系统收到signal定义的信号,则触发本迁移。用户点击视图中的“name = 本处定义的signal”的button,此时相当于向系统发送迁移信号量。系统会根据视图中的对象id,找到对象关联的workflow,再找到与 button name相同的signal,触发之。
condition:迁移的条件,是一段Python代码,通常是一个函数调用。当系统收到signal中定义的信号时候,检查此处的条件,条件为真则实际触发迁移。
注:代码只列出点击提交按钮迁移。
测试
1. 新建车辆
2. 点击保存
3. 点击toprove按钮,会出现审批按钮,权限控制会在另一篇中介绍。
4.点击同意或拒绝按钮,流程结束。
- OpenERP工作流浅析
- Openerp 工作流-业务 流程
- OpenERP之工作流
- OpenERP之工作流 workflow
- Openerp工作流参考资料
- OpenERP报表浅析
- 浅析工作流
- 深入理解OpenERP的工作流(Workflow)
- OpenERP工作流祥解(workflow)
- 深入理解Odoo(OpenERP)的工作流(Workflow)
- 浅析JBPM工作流引擎
- 浅析JBPM工作流引擎
- 浅析JBPM工作流引擎
- 浅析JBPM工作流引擎
- 浅析JBPM工作流引擎
- 浅析JBPM工作流引擎
- OpenERP工作流不同角色看属于自己审批的方法
- 深入理解OpenERP的工作流(Workflow) - Chen Jian
- mysql学习笔记
- 关于mybatis 中collection does not contain value for
- struct作为map的key时,需要重载该结构体
- Sublime Text2/3怎样在Ubuntu中配置CTags插件
- 关于webservice c调用
- OpenERP工作流浅析
- onnewintent的使用时机
- 思考
- iOS中属性与成员变量的区别
- DMA基本概念及linux2440下DMA驱动程序编写与测试
- JSP知识4
- unp.h头文件的安装
- ISP(Interface Segregation Principle),接口隔离原则
- 使用USES_CONVERSION出现stack overflow错误