Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
3596 Zobrazení

Hello I am trying to make an on change. Everything is ok, The field call the method and all. BUt when this had that feed another field this give me error:

I am trying to feed a relational(Many2one) with the results of a query. Here is my code:

    

    invoice = fields.Many2one('account.invoice', string='Factura')
    client = fields.Many2one('res.partner', string='Cliente', domain=[('customer', '=', True)])

    @api.onchange('client')
    def _searchInvoice(self):
        if self.client is not None:
            invoice = self.env['account.invoice'].search([('type', '=', 'out_invoice'),
                                                           ('partner_id', '=', self.client.id)])
            self.invoice = invoice

Avatar
Zrušit
Nejlepší odpověď

Hi, there is some troubles in your code :

0) names field should be invoice_id and partner_id instead invoice and client.

1) You define 2 fields many2one and a search on account_invoice objet with domain partner_id => a partner has just one invoice ? Is there a reference between current objet and acccount_invoice to add in search domain to get maximum one id in the returned list by the search ? If not,, you should use a one2many field type for account_invoice relation, the name of the field will be invoice_ids instead invoice in this case.

2) a search return a list of id, with your code you try to set a list in a many2one, it is not possible, you must set an id.

Bye

Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
0
pro 18
13
1
kvě 16
4507
1
zář 23
6581
1
srp 22
7942
5
bře 22
19460