2013-03-16 167 views
1

我創建了一個字段名「鏈接到機會」: - 模塊: - hr.applicant 字段類型: - many2many 對象關係: - crm.lead一個模塊現場使用其他模塊中的OpenERP

和我用在crm.lead模塊中。

現在我想在「hr.recruitment」中使用這個字段。 但我嘗試了很多方法,但沒有成功。請告訴我。如何在其他模塊中使用此字段,如crm.lead到hr.recruitment

感謝您的時間。

此代碼我使用: -

'sale_o_ids' : fields.related('job_id', 'x_link_to_jobposition', 
            readonly=True, 
            relation='crm.lead', 
            string='Opportunity Name'), 
+0

你能提供更多的信息嗎? – user1576199 2013-03-17 13:44:59

+0

您可以在hr.applicant中添加此字段,並且希望在hr.recruitment中使用相同的字段,或者希望在hr.recruitment中添加相同的新字段? – user1576199 2013-03-17 13:47:18

+0

謝謝你。我希望在hr.applicant中添加這個字段,並且這個字段也要在hr.recruitment中使用。所以無論何時此字段將在hr.applicant中更新,我都可以在hr.recruitment中看到此值。此字段將只創建一個。但用於其他兩個模塊。謝謝你,請建議我 – user2160008 2013-03-18 06:15:49

回答

0

這裏是例如:

many2many的

class hr_job(osv.osv): 
    _inherit = 'hr.job' 
    _columns = { 
     'sale_ids': fields.many2many('sale.order', 'hr_job_sale_order_rel', 'job_id', 'sale_id', 'Sale order'), 
    } 

hr_job() 

這裏創建sale.order的many2many字段現在

我想要使用hr.employee中的hr.job字段。

class hr_employee(osv.osv): 
    _inherit = "hr.employee" 
    def _get_sale_order(self, cr, uid, ids, field_name, arg, context=None): 
     if context is None: 
      context = {} 
     result = {} 
     list_o = [] 
     for order in self.browse(cr, uid, ids, context=context): 
      for i in order.job_id.sale_ids: 
       list_o.append(i.id) 
     result[order.id] = list_o 
     return result 
_columns = { 
    'sale_order_ids': fields.function(_get_sale_order, type='many2many', relation="sale.order", string="Sale Orders"), 
} 

hr_employee() 

所以,當你在hr.job many2many場更新那麼它的更新值顯示在hr.employee對象時,在工作選擇這份工作

你可以使用相關的另一種方法

'sale_o_ids' : fields.related('job_id', 'sale_ids', 
             type='many2many', 
             readonly=True, 
             relation='sale.order', 
             string='Available Sale Order'), 

希望這件事清楚

+0

非常感謝。我用你的第二選擇方法。但我得到錯誤: - KeyError:「字段'job_id'不存在於對象'browse_record(hr.job,6)'」中。我在寫我的代碼。一次檢查謝謝你的時間。 – user2160008 2013-03-25 12:14:58

+0

嗨,我的第二個代碼只是一個例子來解釋你是如何工作的第二個代碼,我在hr.employee中添加了sale_o_ids字段,所以job_id是hr.employee中的hr.job字段的many2one。對於你的代碼,你有許多領域hr.applicant,所以你有一個many2one字段hr.recruitment像**'applicant_id':fields.many2one('hr.applicant','申請人')**然後相關的領域,你可以創建如下:**'sale_o_ids':fields.related('applicant_id','crm_lead_ids',type ='many2many',readonly = True,relation ='crm.lead',string ='Crm Leads'),** – user1576199 2013-03-26 05:06:28

+0

這裏** crm_lead_ids **在很多2個字段中退出hr.applicant希望它清楚你現在! – user1576199 2013-03-26 05:07:52

相關問題