跳至內容
選單
此問題已被標幟
2 回覆
6294 瀏覽次數

I'm trying to get a field "planned_qty" to the same value as "product_qty" when its created but I'm not having any luck. I thought all I needed to do was define the field like below and default = product_qty. But alas its not that easy. Can someone advise?

planned_qty = fields.Float( 'Planned Quantity', digits = dp.get_precision( 'Product Unit of Measure' ) )
頭像
捨棄
最佳答案

1) create fields like:

'product_qty': fields.float(string='Product Qty'),

'planned_qty': fields.float(string='Planned Quantity'),

2)define in xml

<field name="planned_qty" on_change="onchange_planned_qty(planned_qty)"/>
<field name="product_qty" on_change="onchange_product_qty(product_qty)"/>

3) call onchange function

def onchange_product_qty(self, cr, uid, ids, product_qty, context=None):
        if product_qty:
            return {'value': {''planned_qty': product_qty}}  

      else:
            return {'value':{''planned_qty': ''}}


    def onchange_'planned_qty(self, cr, uid, ids, 'planned_qty, context=None):
        if planned_qty:
            return {'value': {'product_qty': planned_qty}} 

       else:
            return {'value': {'product_qty': ''}}


頭像
捨棄
最佳答案

In odoo 14, try "post_init_hook"

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
1
8月 23
3837
0
12月 24
1303
1
3月 24
2346
1
6月 23
12342
0
1月 23
3026