Ciao a tutti, stavo provando a implementare la funziona create dei progetti:
@api.model
def create(self, vals):
partner_id = vals['partner_id']
if partner_id:
partner = self.env['res.partner']
partner_mio = partner.search([('id', '=', partner_id)])
if partner_mio.city:
partner_nome = u" %s - %s" % (partner_mio.name, partner_mio.city)
else:
partner_nome = u" %s" % (partner_mio.name)
else:
partner_nome = ' '
vals['name'] = self.env['ir.sequence'].next_by_code('project.project') + ' ' \
+ vals['name'] + ' ' \
+ partner_nome
return super(ProjectProject, self).create(vals)
In questo modo aggiungo al nome del progetto una sequenza che ho creato, il nome cliente e la città.
Questo diciamo che funziona correttamente.
Il mio problema è se vado nei contratti e da li creo un contratto con la spunta attività (quindi prova a creare il progetto), mi da errore:
partner_id = vals
KeyError: 'partner_id'
Ho provato ad aggiungere :
if 'partner_id' in vals.keys():
come prima riga ma mi riporta questo errore:
in <lambda>
@api.returns('self', lambda value: value.id)
AttributeError: 'NoneType' object has no attribute 'id'.
Qualcuno saprebbe dirmi dove sbaglio e come risolvere? Ringrazio come sempre in anticipo tutti