1

我创建了一个字段名称“机会链接”:- 模块:- hr.applicant 字段类型:- many2many 对象关系:- crm.lead

我在 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'),
4

1 回答 1

0

这是示例:

多对多

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()

这里创建了 sales.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'),

希望这件事对你清楚

于 2013-03-19T06:24:50.030 回答