转自:http://blog.csdn.net/yeahliu/article/details/17207289

2013-12-22 添加workflow_stop标识,感谢广州-jerry

2013-12-11 将代码提交到GitHub

2013-12-10 修复以下内容:
1. 去掉template中无用的节点
2. 修正了客户端workflow请求中参数错误,原错误会导致wkf_logs表中记录的act_id出错,或者有时会出现找不到wkf_instance的错误
3. 把workflow.logs的查看权限设置为base.group_user,即是所有雇员均能查看

openerp工作流增强,在审批或拒绝过程中,可以输入审批信息,同时记录审批记录

代码地址:

https://github.com/yeahliu/workflow_info

https://github.com/yeahliu/workflow_info_emp

功能 :

  1. 对于审批和拒绝,弹出输入信息的窗口,可以对此次审批作说明
  2. 审批记录记录在表wkf_logs中,这个表原本在openerp中就已经有,只是没有启用
  3. 与原工作流按钮不冲突,可以一起使用

使用说明 :

  1. 安装workflow_info模块
  2. 将需要弹出信息窗口用于输入审批信息的按钮的type设置成"workflow_ok"或"workflow_no”
  3. 如果需要在页面上输入审批记录,按以下步骤操作: 
    a. 在.py文件中引入“from openerp.addons.workflow_info import workflow_func” 
    b. 在_columns里加入字段,如
'wkf_logs':fields.function(workflow_func._get_workflow_logs, string='审批记录', type='one2many', relation="workflow.logs",readonly=True),

        c. 在view文件里可以这样引用:

<field name="wkf_logs">
<tree string="审批记录" colors="red:(status=='no')">
<field name="job_id" />
<field name="employee_id" />
<field name="time" />
<field name="status" />
<field name="info" />
</tree>
</field>

       d. 对于按钮,可以这样设置:

<button name="to_sale" string="提交" type="workflow_submit" states="draft" class="oe_highlight" />
workflow_submit表示这是提交按钮,不需要弹出输入窗口
<button name="to_delivery" string="销售审批" type="workflow_ok" states="wf_sale" class="oe_highlight"/>
workflow_ok 表示这是审批按钮,弹出输入审批信息窗口
<button name="refuse" string="拒绝" type="workflow_no" class="oe_highlight"/>
workflow_no 表示这是拒绝按钮,弹出输入拒绝信息窗口
截图:
拒绝信息

过也可弹出,可以不填

Openerp workflow 工作流批注模块的更多相关文章

  1. 基于Vue的工作流项目模块中,使用动态组件的方式统一呈现不同表单数据的处理方式

    在基于Vue的工作流项目模块中,我们在查看表单明细的时候,需要包含公用表单信息,特定表单信息两部分内容.前者表单数据可以统一呈现,而后者则是不同业务的表单数据不同.为了实现更好的维护性,把它们分开作为 ...

  2. 风尘浪子 只要肯努力,梦想总有一天会实现 WF工作流与Web服务的相互调用 —— 通过Web服务调用Workflow工作流(开发持久化工作流) _转

    如果你曾经负责开发企业ERP系统或者OA系统,工作流对你来说一定并不陌生.工作流(Workflow)是对工作流程及其各操作步骤之间业务规则 的抽象.概括.描述.工作流要解决的主要问题是:为实现某个业务 ...

  3. 深入理解OpenERP的工作流(Workflow)

    一.工作流定义: <?xml version="1.0"?>  <terp><data>    <record model="w ...

  4. WorkFlow 工作流 学习笔记

    传统ERP为制造业企业产供销人财物的管理提供了一整套优化企业资源利用,集物流.信息流.资金流为一体的现代化管理工具.但是它在过程集成和企业间集成方面存在不足.具体表现在: 1.传统ERP是一个面向功能 ...

  5. JavaScript + SVG实现Web前端WorkFlow工作流DAG有向无环图

    一.效果图展示及说明 (图一) (图二) 附注说明: 1. 图例都是DAG有向无环图的展现效果.两张图的区别为第二张图包含了多个分段关系.放置展示图片效果主要是为了说明该例子支持多段关系的展现(当前也 ...

  6. SharePoint 2013 Nintex Workflow 工作流帮助(十三)

    博客地址 http://blog.csdn.net/foxdave 工作流动作 35. Delegate Workflow Task(User interaction分组) 该操作将委托未处理的工作流 ...

  7. SharePoint 2013 Nintex Workflow 工作流帮助(八)

    博客地址 http://blog.csdn.net/foxdave 工作流动作 15. Complete Workflow Task(User interaction分组) 此工作流动作将完成任何进行 ...

  8. SharePoint 2013 Nintex Workflow 工作流帮助(六)

    博客地址 http://blog.csdn.net/foxdave 工作流动作 7. Call web service(Integration分组) 一个调用WebService的操作. 自然,配置项 ...

  9. SharePoint 2013 Nintex Workflow 工作流帮助(二)

    博客地址 http://blog.csdn.net/foxdave 工作流动作 1. Action Set(Logic and flow分组) 它是一个工作流的集合,可以理解为容器的东西.所以它本身并 ...

随机推荐

  1. hdu 3586 树形dp+二分

    题目大意:给定n个敌方据点,1为司令部,其他点各有一条边相连构成一棵 树,每条边都有一个权值cost表示破坏这条边的费用,叶子节点为前线.现要切断前线和司令部的联系,每次切断边的费用不能超过上限lim ...

  2. bzoj 2002 LinkCutTree

    我的第一道LCT题(居然1A,O(∩_∩)O哈哈~) 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 大概题意: 给一颗有根树,维护每个 ...

  3. Effective Java部分读书笔记

    2.创建和销毁对象 1.使用静态工厂方法代替构造器 一般使用构造器(构造函数)创建对象实例,还可以使用静态工厂方法来创建对象实例. 优点 使用静态工厂方法代替构造器创建对象实例有以下优点: 1)静态构 ...

  4. Educational Codeforces Round 12 A. Buses Between Cities 水题

    A. Buses Between Cities 题目连接: http://www.codeforces.com/contest/665/problem/A Description Buses run ...

  5. Codeforces Beta Round #4 (Div. 2 Only) B. Before an Exam dp

    B. Before an Exam 题目连接: http://www.codeforces.com/contest/4/problem/B Description Tomorrow Peter has ...

  6. linux基础命令学习 (十一)系统管理命令

    stat              显示指定文件的详细信息,比ls更详细 who               显示在线登陆用户 whoami          显示当前操作用户 hostname   ...

  7. linux基础命令学习(一)系统的关机、重启以及注销

    1.shutdown shutdown 参数说明: [-t] 在改变到其它runlevel之前﹐告诉init多久以后关机. [-r] 重启计算器[reboot]. [-k] 并不真正关机﹐只是送警告信 ...

  8. PHP语言的优势?

    稳定性: 毫无疑问,PHP已经是目前互联网服务端使用最广泛的编程语言之一,目前PHP在互联网应用领域的占有率位居全球第一.试问,如果本身不够成熟和稳定,如何能占有如此大的市场呢? 易用性: 简单实用, ...

  9. Vue.js插件开发

    Vue.js插件是为应用添加全局功能的一种强大而且简单的方式.插件的用途很广泛,从全局组件,到为应用添加一些额外的功能.如路由(Vue Router),存储在应用程序里的不可变数据(Vuex). 一般 ...

  10. ffmpeg的IO操作

    ffmpeg 可以通过IO操作将数据读取和存储在文件或网络中 作为数据的读取和写入地址,数据被存放在file,http, ffmpeg 不仅可以编解常用的音视频格式,还可以将数据导入/导出到各种媒介中 ...