Reputation: 2129
When I'm creating records manually in [ Invoicing > Customers ] partner records were creating properly with default 'customer'=True (boolean field) which is located in Sales & Purchases Page of Customers form. Problem is while I'm trying to create records with below code its working but not creating res.partners as 'customer'=True.
class RFID_users(osv.osv):
_name = 'res.users'
_inherit = ['res.users','mail.thread']
def create(self,cr,uid,vals,context=None):
if not context:
context = {}
if vals.get('login',False):
vals.update({'email':vals.get('login')})
model_obj = self.pool.get('ir.model.data')
group = model_obj.get_object_reference(cr,uid,'rfid_ticketing','group_user_customer')
if len(group) == 2:
group_id = group[1]
if context.get('default_user_type',False) == 'ticket_user':
vals.update({'in_group_'+str(group_id):True})
return super(RFID_users,self).create(cr,uid,vals,context=context)
return self.pool.get('res.partner').create(cr,uid, 'customer':True,'name':vals['name'], "mobile":vals['mobile_user'], 'email':vals['login']},context=context)
return objz.create(cr,uid,new_valsz,context=context)
FYI: Record is creating but 'customer' becoming False.if we create record manually there is it's true by default.P.S Focus on this line...
return self.pool.get('res.partner').create(cr,uid,{'customer':True,'name':vals['name'], "mobile":vals['mobile_user'],
'email':vals['login']},context=context)
Any help?? Thanks
Upvotes: 0
Views: 988
Reputation: 1575
You should unify your create, this should do the trick:
vals.update({'customer':True,'name':vals['name'], 'mobile':vals['mobile_user'], 'email':vals['login']})
return super(RFID_users,self).create(cr,uid,vals,context=context)
about return objz.create(cr,uid,new_valsz,context=context)
this is going to not work at all because you did not declare anywhere what are objz and new_valsz, thus just remove or comment it.
Upvotes: 1