odoo 9自动更改选择字段和单选按钮字段取决于更改的其他选择字段

时间:2017-03-30 07:09:41

标签: python xml openerp

我需要帮助。 当我将内部类别(字段名称为categ_id)值更改为500最终产品

时,我想要

然后路由字段更改为: 制造检查, 按订单生产, 买了检查

以及跟踪价值字段也会发生变化: 通过批次检查

我该怎么做?有什么建议吗?或者我的问题不够明确吗? 对不起要问,我从来没有这样做过,所以有点令人困惑。 在这里,我得到了界面和该领域的信息。

Routes field name Tracking field name

请有人帮助我。我很困惑。

1 个答案:

答案 0 :(得分:2)

你可以通过在Odoo 9中使用api onchange来实现这一点。

@api.onchange('categ_id')
def onchange_categ_id(self):
  for record in self:
    # I prefer to check by id, but here I show how to check by string name in case you want it
    if record.categ_id.name == '500 final product':
      # because route_ids is many2many field, 
      # you need special commands to change the value
      # here I use (6, _, ids) to set value. 
      # But before that, you have to get the ids of the routes you want from model stock.location.route 
      # (you could use search method to get the ids)
      record.route_ids = [(6,0, list_of_id)]
      record.tracking = 'lot'
      ...

您可以参考Odoo Doc了解有关O2m和M2m命令的更多信息