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

I'm trying to create a geneic filter (for all users) to allow users to see the meetings in the calendar where they are included as attendees. I'm trying something like this:

[['partner_ids.child_ids','in',user.partner_id.id]]

but when using the filter I receive the error: Uncaught TypeError: Cannot read property 'length' of undefined http ://sv-openerp-test/web/static/src/js/views.js:791

Any ideas on how to do this? Thanks in advance!

NOTES: As far as I see the relationship between the meeting and the partners is "partner_ids" (instead of "attendee_ids"). The existing filter "My Meetings" shows the ones where I'm the creator of the meeting, but does not show the ones where I'm invited.

Search view:

View Name: CRM - Meetings Search

View Type: Search

Object: crm.meeting

External ID: base_calendar.view_crm_meeting_search

Sequence: 16

<search string="Search Meetings"> <field name="name" string="Meeting" filter_domain="[('name','ilike',self)]"/> <field name="partner_ids"/> <field name="categ_ids"/> <field name="user_id"/> <separator/> <filter string="My Meetings" help="My Meetings" domain="[('user_id','=',uid)]"/> <filter string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/> </search>

Avatar
Zrušit
Autor

Additional comment: I'm trying to do this via settings->technical->user interface->user-defined filters

Nejlepší odpověď

Hello

I would suggest to use rule functionality in security module. Apply your domain in rule for certain group and assign your users to that group. So when particular user login , he can see attendee specific meetings.

Avatar
Zrušit
Autor

Thanks shashank, I would prefear to use a filter, and the case is I'm getting that error I can't solve.

Nejlepší odpověď

Hi,

Go Settings >> Security >> Record Rule

Create Record rule and pass this domain ['|', ('attentdee_ids','in',user.id),('attentdee_ids','in',user.partner_id.id)]

Avatar
Zrušit
Autor

Thanks Jack, I would prefear to use a filter, and the case is I'm getting that error I can't solve.

Nejlepší odpověď

Domain operator 'in' expects a list as second argument, so please try:

[['partner_ids', 'in', [user.partner_id.id]]]

If you want the meeting to be visible to a whole company aswell try:

['|', ['partner_ids.child_ids', 'in', [user.partner_id.id]], ['partner_ids', 'in', [user.partner_id.id]]]


@ shashank verma and Jack:
Your suggestion to use record rules will indeed filter the meetings, but it's not possible for a user to deactivate this filter.

Regards.

Avatar
Zrušit
Autor

René, thanks for your help. Unfortunately with both expressions I'm getting the same error described in my question. Any ideas? I'm just entering the model "Meeting", the expression in the Domain and {} in the Context.

Can you please post your complete search view?

Autor

Sure, I've added it to the body of the question, please bear in mind all the views are the default ones. Thanks again!

Related Posts Odpovědi Zobrazení Aktivita
1
dub 24
13979
3
bře 15
20493
0
bře 15
4033
3
dub 23
34058
5
zář 20
12902