Odoo 工作流程在创建时不处于状态草稿
Odoo workflow not in state draft on create
我制作了一个自定义工作流程,其中包括两个状态:草稿、完成。
我的模型只有在我保存或单击表单上的随机按钮后才会进入状态草稿。
我添加了 flow_start 属性,认为这会解决这个问题,但没有结果。
这是我的工作流程代码:
<openerp>
<data>
<!-- maatwerk order workflow -->
<record id="mw_workflow" model="workflow">
<field name="name">mw.workflow</field>
<field name="osv">maatwerk.order</field>
<field name="on_create">True</field>
</record>
<record id="activity_draft" model="workflow.activity">
<field name="wkf_id" ref="mw_workflow"/>
<field name="flow_start">True</field>
<field name="name">draft</field>
</record>
<record id="activity_done" model="workflow.activity">
<field name="wkf_id" ref="mw_workflow"/>
<field name="flow_stop">True</field>
<field name="name">done</field>
<field name="kind">function</field>
<field name="action">done()</field>
</record>
<record id="trans_draft_done" model="workflow.transition">
<field name="act_from" ref="activity_draft"/>
<field name="act_to" ref="activity_done"/>
<field name="signal">draft_done</field>
</record>
</data>
</openerp>
在 Odoo 中获取默认值有两种简单的方法:
ORM 模型 _defaults (V7+)
class ModelX(orm.Model):
_name = 'model.x'
_columns = {'state':fields.selection([('draft','Draft'),('done','Done')], string='State')}
_defaults = {'state':'draft'}
字段默认值 (V8+):
class ModelX(models.Model):
_name = 'model.x'
field_x = fields.Selection([('draft','Draft'),('done','Done')], string='State', default='draft')}
使用其中一种解决方案,您的模型条目在创建后应具有状态 'draft'。
我制作了一个自定义工作流程,其中包括两个状态:草稿、完成。 我的模型只有在我保存或单击表单上的随机按钮后才会进入状态草稿。 我添加了 flow_start 属性,认为这会解决这个问题,但没有结果。
这是我的工作流程代码:
<openerp>
<data>
<!-- maatwerk order workflow -->
<record id="mw_workflow" model="workflow">
<field name="name">mw.workflow</field>
<field name="osv">maatwerk.order</field>
<field name="on_create">True</field>
</record>
<record id="activity_draft" model="workflow.activity">
<field name="wkf_id" ref="mw_workflow"/>
<field name="flow_start">True</field>
<field name="name">draft</field>
</record>
<record id="activity_done" model="workflow.activity">
<field name="wkf_id" ref="mw_workflow"/>
<field name="flow_stop">True</field>
<field name="name">done</field>
<field name="kind">function</field>
<field name="action">done()</field>
</record>
<record id="trans_draft_done" model="workflow.transition">
<field name="act_from" ref="activity_draft"/>
<field name="act_to" ref="activity_done"/>
<field name="signal">draft_done</field>
</record>
</data>
</openerp>
在 Odoo 中获取默认值有两种简单的方法:
ORM 模型 _defaults (V7+)
class ModelX(orm.Model): _name = 'model.x' _columns = {'state':fields.selection([('draft','Draft'),('done','Done')], string='State')} _defaults = {'state':'draft'}
字段默认值 (V8+):
class ModelX(models.Model): _name = 'model.x' field_x = fields.Selection([('draft','Draft'),('done','Done')], string='State', default='draft')}
使用其中一种解决方案,您的模型条目在创建后应具有状态 'draft'。