0

我想添加报价的状态,我看到开头有 3 个:报价、已发送预算和销售订单通知。我需要添加一个状态,显示“等待批准”,只有管理用户批准它。我知道我可以通过继承做什么,但是模型在哪里,哪个模块是我应该作为依赖项放置的模块。

有人可以帮助我吗?

更新:我已经找到了。而且我已经找到了要添加更多状态的字段。但是,作为新手,我无法理解所有这些代码。有人可以向我解释一下吗?

state = fields.Selection([ ('draft', 'Quotation'), ('sent', 'Quotation Sent'), ('sale', 'Sales Order'), ('done', 'Locked'), ('cancel', 'Cancelled'), ], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', track_sequence=3, $ date_order = fields.Datetime(string='Order Date', required=True, readonly=True, index=True, states={'draft': [$ validity_date = fields.Date(string='Validity', readonly=True, copy=False, states={'draft': [('readonly', False$ help="Validity date of the quotation, after this date, the customer won't be able to validate the quotatio$ is_expired = fields.Boolean(compute='_compute_is_expired', string="Is expired")

4

1 回答 1

0

报价单是尚未确认的销售订单。您可以从多个提示中检查记录模型,例如:

  1. 从 URL,一旦你进入报价菜单,你就会得到如下的 url /web?#view_type=list&model=sale.order&action=264&menu_id=166。这里模型参数是model=sale.order,所以你必须寻找模型定义sale.order
  2. 转到所需的视图,单击调试菜单 -> 编辑操作,查找字段对象,在这种情况下也是如此sale.order

一旦你得到你需要处理的模型,你可以通过搜索_name.*sale.order或替换sale.order为你需要继承的任何模型来查找模型定义。

在这种特殊情况下,您需要的模块在模块中定义sale。因此,您可以从继承sale.ordersale作为您的自定义模块依赖项开始。另请记住,odoo 内置模块有时会被继承,因此可能存在您想要继承模型的功能但fields或者views您想要继承的情况是在 的子模块中定义的sale,例如某些sale.order模型功能是sale_stock通过继承在模块中定义。在这种情况下,您必须设置sale_stock为依赖项。

于 2019-03-20T17:04:07.983 回答