我是OpenERP开发中的新手,我想在opprotunity表单视图中添加一些字段。
1)我想为Stages添加Picklist字段。
2)我想添加float(系数)类型的新字段,ReadOnly并且它取决于机会在创建时间方面的顺从性:
If probability <50% then coefficient == 1
Else if probability >50% then coefficient == 0.1
Else coefficient == 0.5
首次计算系数后,不应更改系数。
答案 0 :(得分:1)
首先需要继承模型以添加自定义字段,然后继承视图并在视图中添加字段(树,表单,搜索等)。创建自己的自定义模块是实现它的最佳方式。
有关继承的更多信息,请访问Object Inheritance
中的继承答案 1 :(得分:0)
我添加了这个方法:
def _get_coefficient_value(self, cr, uid, context=None):
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context)
if stage.probability > 50:
x_coefficient = 0.1
elif value < 50:
x_coefficient = 1
else:
x_coefficient = 0.5
return x_coefficient
并且在crm_lead.py上创建方法时,我添加了一行:
vals['x_coefficient'] = self._get_coefficient_value(cr, uid, context=ctx)
def create(self, cr, uid, vals, context=None):
if context is None:
context = {}
if not vals.get('stage_id'):
ctx = context.copy()
vals['x_coefficient'] = self._get_coefficient_value(cr, uid, context=ctx)
if vals.get('section_id'):
ctx['default_section_id'] = vals['section_id']
if vals.get('type'):
ctx['default_type'] = vals['type']
vals['stage_id'] = self._get_default_stage_id(cr, uid, context=ctx)
return super(crm_lead, self).create(cr, uid, vals, context=context)
但是当我创造新机会时,无论机会阶段如何,系数字段== 0。
我希望在您保存新机会时执行_get_coefficient_value,我的字段系数应根据阶段自动计算。