openERP server action,最强大的功能,没有之一
Jeffery9@gmail.com 出品
@jeffery-陈帆
原理
ations
OE定义了ir.actions.actions,并从中派生了众多的子类
- ir.actions.client
- ir.actions.act_url
- ir.actions.act_window
- ir.actions.act_window_close
- ir.actions.wizard
- ir.actions.server
用来执行相关的动作
Server action
其中有一个子类 ir.actions.server ,可以用来执行服务器端的动作。
可以执行的动作有;
'state': fields.selection([
('client_action','Client Action'),
('dummy','Dummy'),
('loop','Iteration'),
('code','Python Code'),
('trigger','Trigger'),
('email','Email'),
('sms','SMS'),
('object_create','Create Object'),
('object_copy','Copy Object'),
('object_write','Write Object'),
('other','Multi Actions'),
], 'Action Type', required=True, size=32, help="Type of the Action that is to be executed"),

可以用来干各种事情
Automated Action Rules
模块定义了 自动动作规则
-针对什么对象
-条件
-动作
,即server_action定义的动作
何时触发
- 定时器触发
- 注入到对象的create/write方法中
使用场景
例如,
- 当有任务指派时,发送通知邮件给被指派的人
- 定时提醒
- 接收到邮件时,创建对象实例
实际操作
建立server_actions.
菜单 Settings/ Technical/ Actions/ Server Actions

create一个新的action

object处选择Task,
即project.task
Action type选择Email
其中可以选的action有很多,如下

定制邮件内容
- 邮件接收人
- 邮件主旨
- 邮件内容
提示,如果不清楚object的属性,可以点击弹出窗口按键,弹出Task定义窗口


设置好相关的参数后,保存

至此,server_action设置好了。
设置automatic action rule以便可以触发动作。
菜单 Settings/ Technical/ Automated Actions/ Automated Actions

create一个automatic action rule.

输入规则名称
选择相应的对象,在此选择task ,即project.task
设置conditions
目的,用来过滤哪些对象可以执行服务器动作

说明;
Timer如果不设置,则当crete/update Object时触发服务器动作;否则,按照定时器设定的时间触发,但是会按照trigger date设置的参数筛选相应的对象实例。

设置actions

点击Add按钮,在弹出窗选择已经创建的server action或者建立新的server action.

提示;
可以添加多个动作,动作按sequence顺序执行

注意;
Fields to change. 是指 change the fields of the object.
Add Followers,是指
为此 instance of object指派
订阅者(但有条件,具体看代码
;))
定时任务
Automatic action rules是由 ir.cron定期执行的,如

附加说明
注入到对象创建、修改方法的代码

修改create方法

修改write方法

执行动作时,修改
Fields to change
和Add Follower的相关代码

总结;
- 如果使用filter. 不要给 filter指定 res.user !!! 否则会有权限问题发生!!!
- 如果设置了timer. 则不注入到model,不触发动作

- 如果设置了timer. 而
时间条件不成熟时,不触发动作

openERP server action,最强大的功能,没有之一的更多相关文章
- odoo开发笔记:Server+Action服务器动作自动触发执行
Odoo的市场定位是SME(中小型企业),这个市场的ERP产品,多如牛毛,产品各具特色.不过,Odoo的自动化处理机制,可以睥睨天下,无人能及.包括一些大型国产软件,如用友.金蝶也不具备 ...
- Python和SQL Server 2017的强大功能
Python和SQL Server 2017的强大功能 摘要: 源:https://www.red-gate.com/simple-talk/sql/sql-development/power-pyt ...
- Windows Server 2016-存储新增功能
本章给大家介绍有关Windows Server 2016 中存储方面的新增功能,具体内容如下: 1.Storage Spaces Direct: 存储空间直通允许通过使用具有本地存储的服务器构建高可用 ...
- c#直接调用ssis包实现Sql Server的数据导入功能
调用ssis包实现Sql Server的数据导入功能网上已经有很多人讨论过,自己参考后也动手实现了一下,上一次笔者的项目中还用了一下这个功能.思前想后,决定还是贴一下增强记忆,高手请54. 1.直接调 ...
- SQL SERVER 数据库各版本功能对比
以前写了篇SQL SERVER 2008数据库各版本功能对比,官网提供的那个功能确实很好很强大,后面发现那个链接失效了.今天又遇到要对比SQL Server 2014数据库版本功能需求,搜索找了好久才 ...
- win2008下安装SQL SERVER 2005出现IIS功能要求 警告解决方案
原因: 出现此问题的原因取决于 SQL Server 的不是所有 IIS 7.0 组件都安装在计算机上.下表列出了受影响的组件. 收起该表格展开该表格 组件 文件夹 静态内容 常见的 HTTP 功 ...
- SQL Server 2012 各版本功能比较
有关不同版本的 SQL Server 2012 所支持的功能的详细信息. 功能名称 Enterprise 商业智能 Standard Web Express with Advanced Service ...
- 在ASP.NET MVC应用程序中实现Server.Transfer()类似的功能
在ASP.NET MVC应用程序中,如果使用Server.Transfer()方法希望将请求转发到其它路径或者Http处理程序进行处理,都会引发“为xxx执行子请求时出错”的HttpException ...
- WSS存储服务器(Windows Storage Server) 2012新功能解析
虽然最近一段时间有关微软的新闻大多数集中在Windows 8以及Surface平板设备身上,但数周之前Windows Server 2012新版本中所包含的Windows Storage Server ...
随机推荐
- dev c++ 提示没有iostream.h文件
dev c++ 提示没有iostream.h文件 解决办法路径没有打通最好是这样写:#include <iostream>using namespace std;int main(int ...
- Wannafly挑战赛11
就做了两个数学题 链接:https://www.nowcoder.com/acm/contest/73/A来源:牛客网 白兔的分身术 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 2 ...
- 编译安装solr
1, 获取安装包 wget http://download.oracle.com/otn-pub/java/jdk/8u112-b15/jdk-8u112-linux-x64.rpm wget htt ...
- 设计模式(一)单例模式:1-饿汉模式(Eager)
思想: 饿汉模式是最常提及的2种单例模式之一,其核心思想,是类持有一个自身的 instance 属性,并且在申明的同时立即初始化. 同时,类将自身的构造器权限设为 private,防止外部代码创建对象 ...
- 【Luogu】P2764最小路径覆盖(拆点求最大匹配)
题目链接 这个……学了一条定理 最小路径覆盖=原图总点数-对应二分图最大匹配数 这个对应二分图……是什么呢? 就是这样 这是原图 这是拆点之后对应的二分图. 然后咱们的目标就是从这张图上跑出个最大流来 ...
- 【bzoj5110】Yazid的新生舞会
这里是 $THUWC$ 选拔时间 模拟赛的时候犯 $SB$ 了,写了所有的部分分,然后直接跑过了 $4$ 个大样例(一个大样例是一个特殊情况)…… 我还以为我非常叼,部分分都写对了,于是就不管了…… ...
- 【bzoj2440】[中山市选2011]完全平方数 莫比乌斯反演
Description 小 X 自幼就很喜欢数.但奇怪的是,他十分讨厌完全平方数.他觉得这些数看起来很令人难受.由此,他也讨厌所有是完全平方数的正整数倍的数.然而这丝毫不影响他对其他数的热爱.这天是小 ...
- bzoj1306: [CQOI2009]match循环赛(模拟爆搜)
Input第一行包含一个正整数n,队伍的个数.第二行包含n个非负整数,即每支队伍的得分.Output输出仅一行,即可能的分数表数目.保证至少存在一个可能的分数表.Sample Input 6 5 6 ...
- bzoj 3190 [JLOI2013]赛车 半平面交+细节处理
题目大意 这里有一场赛车比赛正在进行,赛场上一共有N辆车,分别称为g1,g2--gn.赛道是一条无限长的直线.最初,gi位于距离起跑线前进ki的位置.比赛开始后,车辆gi将会以vi单位每秒的恒定速度行 ...
- La 3942 字符串+dp
题目大意:一个字符串,可以分解成若干英语单词的连接(单词可以重复使用),求有多少种方法? #include<iostream> #include<cstdio> #includ ...