如何在模块B中使用模块A的字段

时间:2012-11-27 11:50:26

标签: openerp

我有两个模块机会和工作岗位。 我试图在“机会”模块中只使用一个“工作职位”名称的员工。

我是openerp的新手,对python一无所知。所以我使用openerp的开发者选项。我正在附加我的两个模块文件。

是否有字段或其他属性,所以我的字段将使用其他模块值的值,如: -

crm.lead xml文件: -

<field name="name" module="hr.job" />

此处模块未使用“hr.job”的值并使用“crm.lead”值。 如果我使用其他名称,它会给我“not field found”错误。

请高手帮帮我 enter image description here

enter image description here

1 个答案:

答案 0 :(得分:2)

你好像很困惑。您附加的是模块的查看文件,例如其中一个是名为hr.job的对象的表单视图。这不是你称之为“模块文件”。

您需要做的是从您想要的目标对象的引用对象中创建 many2one (或 many2many )字段,这意味着向任何字段添加字段您需要在相应的 py文件中的类列,而不是查看。一个名为opportunity_opportunity的类的一个非常简单的例子:

class opportunity_opportunity (osv.osv):  
        _name = "opportunity.opportunity"  
        _columns = {  
                'name' : fields.char('Name', size=64),  
                'employee_id': fields.many2one('job.position','name')  
                 }  
opportunity_opportunity()

您稍后可以将其作为任何其他字段添加到opportunity_view.xml文件中:

<field name="employee_id" string="Employee"/>

更重要的是,我认为您需要认真阅读并理解开发人员的书:OpenERP 6.1 Developer Book

编辑:我刚刚注意到你昨天已经在link发布了同样的问题,这在stackoverflow中非常不受欢迎。在发布问题之前,请花点时间阅读openerp文档。