2016-03-02 53 views
0

我有一个计算字段,可以在产品选择时生成序列。但是我不想在添加产品到表单视图时生成序列。我想要的是只有当保存按钮被按下标题时,该值才被添加到序列中。只有在Odoo中按下保存按钮时,如何显示字段的值?

有没有可能这样做?

是否有任何方法来验证一个字段,如果一个按钮被按下或没有?

下图显示了当我将一个元素添加到窗体时,序列被创建。但我希望只有在按下保存按钮时才会创建序列。

图片:http://es.zimagez.com/zimage/image1d001867bb69d2ffa90c65209e81976cc.php

这是该领域和功能。但只有按下保存按钮时才生成序列:

niu = fields.Char(string="NIU", compute="_niu_validation", readonly=True, store=True) 

    @api.depends('product_id.product_tmpl_id.type') 
    def _niu_validation(self): 
     for recordset in self: 
      if rec.product_id.product_tmpl_id.type == 'product' and not rec.niu: 
        rec.niu = self.env['ir.sequence'].next_by_code('sale.order.line') 

我希望你明白我的意思。

谢谢大家。

+0

据我所知,当用户在主窗体上按** Save **按钮时,您想要保存'niu'值。但是当添加一些行时,'NIU'列中的用户应该看到什么? –

+0

只有当保存按钮被按下时,您才需要更新序列。因为在写入时,每次计算niu字段时都会更新序列。 – Zety

回答

0

这将是更适合jquery的东西,非常简单。首先,在CSS或元素本身中设置display = none。然后在脚本中添加此:

$('#save_button).click(function(this){ 
    $(this).preventdefault(); 
    $('#thing_youre_hiding').toggle(); 
    $(this).submit(); 
}); 
+0

你的错误答案。 '$('#save_button)' - >'$('#save_button')'。你知道关于Odoo的一些情况吗? Odoo使用骨干API,qWeb,小部件等。我认为在jQuery上为openrERP应用程序编写脚本不是很好的解决方案。 –

0

我觉得我'晚,但如果你不希望显示在视图中的任何字段,当用户仍在编辑给它class="oe_readonly"

相关问题