Search code examples
odooodoo-12

see the contact's meetings


I am on Odoo 12, my question is quiet simple. how can I see the meetings that belongs to one contact?

as you can see here, that for this contact, I have 2 meetings.

enter image description here

What I expect, is that it will show me the 2 meetings that belong to Azure Interior. But what happens is that it shows all the meetings for all contacts

enter image description here

is it a bug in Odoo itself? (this screenshots are from odoo runbot, I did not change anything) in Odoo 14 for example it works fine


Solution

  • When we click on the Meetings button, the schedule_meeting method is executed to return the action_calendar_event which did not define a domain to filter meetings, it adds only the default partners to the context.

    As it is defined, it will show all active meetings.

    You can override the schedule_meeting method to filter the contact meetings:

    class Partner(models.Model):
    
        _inherit = 'res.partner'
        
        @api.multi
        def schedule_meeting(self):
            action = super(Partner, self).schedule_meeting()
            action['domain'] = [('id', 'in', self.meeting_ids.ids)]
            return action
    

    Or use the meeting_ids field (Many2many) to show them.