Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
3 Risposte
5001 Visualizzazioni

Hi,


I was trying to update record by onchange function. It is not working.

Could you please anyone help me?!

If you have any other solution for it. Pls do suggest

odoo version : 13.0


class AssetMain(models.Model):

    _name = 'asset.asset'


    allocation_lines = fields.One2many('asset.allocation', 'asset_id', string='Allocation')

    current_employee = fields.Many2one('hr.employee', string="Allocated Employee")



class AssetAllocation(models.Model):

    _name = 'asset.allocation'

name = fields.Many2one('hr.employee', string="Employee")

asset_id = fields.Many2one('asset.asset', string="Asset")

@api.onchange('name')

    def _update_asset(self):

        for rec in self.asset_id:

if self.state == 'active'

rec.current_employee = self.name

Avatar
Abbandona
Autore

Thank you Sudhir..

i have been resolved by below code.


def write(self, vals):
res = super(AssetAllocation, self).write(vals)
for rec in self.asset_id:
if self.state == 'active':
rec.current_employee = self.name
rec.current_branch = self.branch
return res
Risposta migliore

It will not work with the onchange but you should do it in the create/write method because onchange is being executed at clientside and not serverside.

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
1
dic 21
1746
0
gen 21
2043
3
mar 24
6659
1
ago 24
14034
2
mar 24
7021