python - 从自定义模块读取草稿状态的所有 sale.order 对象 - Odoo v8

标签 python odoo odoo-8

如何从相关字段读取所有处于“草稿”状态的 sale.order 对象?

我已经尝试过这个:

class account_budget_bsi(models.Model):

    _name = 'account.budget.bsi'

    _inherit = ['crossovered.budget', 'sale.order', 'stock.location', 'stock.move', 'purchase.order']

    sale_order = fields.Many2one('sale.order')
    sales_bsi = fields.Many2one('sale.order' , related="sale_order.state.draft", string="Sales Planned")

但它并没有像看起来那样工作。

知道如何实现这一目标吗?

我的意思是,问题是所有销售订单必须处于“草稿”状态,我知道也许 Many2one 相关字段不起作用,因为“状态”是选择订单,但无法弄清楚如何像这样加载它。

最佳答案

这不是相关字段的用途。您应该使用计算字段来实现此目的,如下所示:

sales_bsi =  fields.One2many('sale.order',
             compute="_compute_sales_bsi")

@api.one
def _compute_sales_bsi(self):
    self.sales_bsi = self.env['sale.order'].search([('state', '=', 'draft')])

它的作用是在 sale.order 模型中搜索处于草稿状态的记录,并将它们添加到字段 sales_bsi 中。如果我理解正确的话,这就是你想要实现的目标。

关于python - 从自定义模块读取草稿状态的所有 sale.order 对象 - Odoo v8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45783993/

相关文章:

python - 在换行符上拆分,但不是空格换行符

python - 如何将txt文件放入Downloads目录中(python,odoo)

javascript - 在 Odoo Pos 收据上打印条形码

python - 递归地将 argparse 命名空间转换为 dict

python - 防止Python在不满足条件的if语句中检查语法错误

python - numpy 数组访问

odoo - 如何解决odoo中的 "No module named"错误?

python - 如何使用 fields_get 方法编辑 View ?

odoo - 解释 OpenERP 7.0 中的安全性以及 (6,0) 和 (4) 有什么用?

python - 在 Odoo View 中将字段输出为文本