2016-04-22 69 views
0

请帮我 当使用many2one我有一个组合产品名称,我的问题是如何更改组合的内容,即而不是产品我有一个标识符。如何使用字段出现在many2one的下拉列表中?

谢谢

class saisir.soumission(osv.osv) 

    _columns = { 
     'NumOffre' : fields.char('N° Offre'), # I want use this field to apear in many2one 
     'organisme_s' : fields.char('Organisme'), 
     'taxe' : fields.selection([('12','12 %'),('10','10 %')],'Taxe Etablissement'), 
     'observation_s' : fields.text('Observation'), 
     'order_line' : fields.one2many('saisir.soumission.ligne','order_id','soumission_id') 
     } 

class saisir_soumission_ligne(osv.osv): 
    _name ='saisir.soumission.ligne' 

    def on_change_produit(self, cr, uid, ids, product_id): 
     val = {} 
     prod = self.pool.get('product.product').browse(cr, uid, product_id) 
     if prod: 
      val['prix'] = prod.list_price 
      val['garantie'] = prod.warranty 
     return {'value': val} 

    _columns= { 
     'order_id': fields.many2one('saisir.soumission', 'Order Reference'), 
     'product_id' : fields.many2one('product.product', 'Type Engin'), 
     'marque' : fields.char('Marque'), 
     'prix' : fields.float('Prix Unitaire'), 
     } 
+0

你可以请浏览“而不是产品,我有一个标识符” – prakash

回答

1

套装_rec_name为​​在模型中这样

class saisir.soumission(osv.osv) 

    _rec_name = 'NumOffre' 

    _columns = { 
     'NumOffre' : fields.char('N° Offre'), # I want use this field to apear in many2one 
     'organisme_s' : fields.char('Organisme'), 
     'taxe' : fields.selection([('12','12 %'),('10','10 %')],'Taxe Etablissement'), 
     'observation_s' : fields.text('Observation'), 
     'order_line' : fields.one2many('saisir.soumission.ligne','order_id','soumission_id') 
    } 
+0

谢谢我的朋友,我很抱歉因为我的英语不好 – khelifa

+0

没问题Khelifa ....如果我的答案适合你,请将其标记为已接受 – danidee

+0

谢谢danidee你给我的解决方案_rec_name运作良好,但我仍然是una可以指定NumOffre是唯一的,并且不会接受具有相同NumOffre的两个记录 – khelifa