【问题标题】:How to creat records in odoo tree view onclick button?如何在odoo树视图onclick按钮中创建记录?
【发布时间】:2018-11-18 21:29:21
【问题描述】:

请帮忙 当我单击 Enregistrer 按钮时,我需要在底部的树视图中创建这些字段

对于这个例子,我的数量等于 12,所以我需要在树视图上创建 12 行,并使用向导视图上的值

向导代码:

class LinesWizard(models.Model):
    _name = 'bons.wizard'
    w_contrat_name = fields.Many2one('contrat.contrat', string='Contrat')
    w_contrat_line = fields.Many2one('contrat.lignes', string='Ligne contrat')
    w_product_name = fields.Many2one('product.product', string='Produit')
    w_po_number = fields.Char(string='Numero PO')
    w_qtt = fields.Float('quantite', related='w_contrat_line.quantity')
    w_prix = fields.Float(string='Prix unitaire', related='w_contrat_line.unit_price')

    @api.onchange('w_contrat_name')
    def on_change_contrat_name(self):
        if self.w_contrat_name:
            self.w_contrat_line = False
            return {'domain': {'w_contrat_line' : [('ligne_ids', '=', self.w_contrat_name.id)]}}
        else:
            return {'domain': {'w_contrat_line': []}}

【问题讨论】:

  • 您是如何通过按钮打开向导的。以及为什么您为此使用向导。是因为您讨厌在树视图中创建线条。这是自定义模型还是 sale.order 的视图
  • 要打开向导,我在 sale.order 的标题上创建了一个按钮,为什么是向导,因为这是他们创建多树所需的工作的请求一键行,取决于数量 而这个视图 sale.order @Cherif
  • 你能显示一个最小的代码来重现这个吗?
  • @WaKo 完成,我添加向导代码
  • 您可以添加一个按钮来填充来自向导的订单行。Odoo 已经在odoo.com/documentation/10.0/howtos/…提供了一个很好的示例

标签: odoo odoo-10 odoo-9


【解决方案1】:

在 Enregistrer 按钮的函数中,您可以使用以下代码获取活动的sale.order ID。

session_id = self.env['sale.order'].browse(self._context.get('active_id'))

然后在同一个函数中,简单地创建并添加你的行。

session_id.write({
    'your_tree_ids': [(0, False, 
        {
        'w_contrat_name': self.w_contrat_name,
        'w_product_name': self.w_product_name,
        'etc': 'etc...'}
        )] * int(self.w_qtt) # assuming rows to be added are the same, create a list of w_qtt quantity of (0, _, values), since your qty is a float, need to convert to int first
    })

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多