
Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn
由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解
本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!
开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号
如果您登录系统碰到问题,请在微信公众号留言:
[分享]几个查询工作流数据的SQL
-
下面是经常用的几个查询工作流数据的SQL,比界面上查询用着顺,就写下来了
--查询某个工作流的activity和transition
select
a.name,a.osv,a.on_create,
d.id,d.condition,d.group_id,d.signal,
b.id as from_act_id,b.name as from_action,b.split_mode,b.join_mode,b.kind,
c.id as to_act_id,c.name as to_action,c.split_mode,c.join_mode,c.kind
from wkf a
join wkf_activity b on a.id = b.wkf_id
join wkf_activity c on a.id = c.wkf_id
join wkf_transition d on b.id = d.act_from and c.id = d.act_to
where a.osv = 'sale.order'
--and b.name in('sent' ,'router', 'wait_invoice','wait_ship','ship')
order by b.name
--查询某个对象的工作流实例的workitem
select a.inst_id,a.act_id,c.name as act_name,a.state, c.split_mode,c.join_mode,c.kind
from wkf_workitem a
join wkf_instance b on a.inst_id = b.id
join wkf_activity c on a.act_id = c.id
where b.res_type = 'sale.order'
and b.res_id = 53
--查询某个对象的工作流实例的log
select a.* ,b.name as act_name
from wkf_logs a
join wkf_activity b on a.act_id = b.id
where res_id = 53 and res_type = 'sale.order' -
嗯. 工作流的重置状态 很需要啊...
一个方法,给定一个对象,ID以及当前状态, 将工作流激活. 这一个方法很重要.
推荐将SQL化为 method, 然后 就OK了. -
对,这个只是查询,OpenERP的工作流架构很不错,但是维护界面离产品化还是有一定差距