if value:
Model = self.pool[column._obj]
rel_id = Model.name_search(cr, uid, value, context=context)
- if not rel_id:
+ if rel_id:
+ rel_id = Model.name_search(cr, uid, value, context=context)[0][0]
+ else:
rel_id = Model.create(cr, uid, {'name': value}, context=context)
vals[field] = rel_id
# Here the code for other cases that many2one
<filter string="Sales Team" domain="[]" context="{'group_by':'section_id'}" groups="base.group_multi_salesteams"/>
<filter string="Stage" domain="[]" context="{'group_by':'stage_id'}"/>
<filter string="Customer" help="Partner" domain="[]" context="{'group_by':'partner_id'}"/>
+ <filter string="Campaign" domain="[]" context="{'group_by':'campaign_id'}"/>
+ <filter string="Source" domain="[]" context="{'group_by':'source_id'}"/>
+ <filter string="Channel" domain="[]" context="{'group_by':'medium_id'}"/>
<filter string="Expected Closing" domain="[]" context="{'group_by':'date_deadline:week'}"/>
<filter string="Last Message" name="group_message_last_post" domain="[]" context="{'group_by':'message_last_post:week'}"/>
</group>