TIP: You can type at any time to perform a new search.
Event CRM
event_crm · odoo/odoo
- Repository
- odoo/odoo · module folder
- Module version
- 1.0
- Category
- Marketing/Events
- Folder size
- 1.01 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- Yes
- Website
- https://www.odoo.com/app/events
- Last tracking update
- 2026-08-15 22:44:17
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Xavier Morel, Raphael Collet, Thibault Delavallée, Odoo Translation Bot, Julien Castiaux, Tiffany Chang (tic), Gorash, Renaud Thiry, Julien Banken, Victor Piryns (pivi), Dylan Kiss (dyki), Andrzej(pian), Jérémy Hennecart (jeh), guce, yagp-odoo, Krzysztof Magusiak (krma), Zachary (zavan), alan-odoo
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- event_crm_sale, test_crm_full, test_event_full, website_event_crm
- Description
Create leads from event registrations.
Code Analysis ⓘ
Views touched (9)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
crm_lead_merge_summary_inherit_event_crm |
crm_lead_merge_summary_inherit_event_crm | ir.ui.view | qweb | Inherits crm.crm_lead_merge_summary |
crm_lead_view_form |
crm.lead.view.form.inherit.event.crm | crm.lead | form | Inherits crm.crm_lead_view_form |
event_lead_rule_view_form |
event.lead.rule.view.form | event.lead.rule | form | New |
event_lead_rule_view_search |
event.lead.rule.view.search | event.lead.rule | search | New |
event_lead_rule_view_tree |
event.lead.rule.view.list | event.lead.rule | list | New |
event_question_view_form |
event.question.view.form | event.question | form | Inherits event.event_question_view_form |
event_registration_view_form |
event.registration.form.inherit.event.crm | event.registration | form | Inherits event.view_event_registration_form |
event_view_form |
event.event.form.inherit.event.crm | event.event | form | Inherits event.view_event_form |
event_view_tree |
event.event.list.inherit.event.crm | event.event | list | Inherits event.view_event_tree |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (6)
New fields (4)
-
event_idMany2one → event.eventhelp='Event triggering the rule that created this lead'index='btree_not_null'string='Source Event' args: 'event.event' -
event_lead_rule_idMany2one → event.lead.rulehelp='Rule that created this lead'index='btree_not_null'string='Registration Rule' args: 'event.lead.rule' -
registration_countIntegercompute='_compute_registration_count'groups='event.group_event_registration_desk'help='Counter for the registrations linked to this lead'string='# Registrations' -
registration_idsMany2many → event.registrationgroups='event.group_event_registration_desk'help='Registrations triggering the rule that created this lead'string='Source Registrations' args: 'event.registration'
No public methods.
New fields (2)
-
lead_countIntegercompute='_compute_lead_count'groups='sales_team.group_sale_salesman'string='# Leads' -
lead_idsOne2many → crm.leadgroups='sales_team.group_sale_salesman'help='Leads generated from this event'string='Leads' args: 'crm.lead', 'event_id'
-
action_generate_leads(self, event_lead_rules=False)Re-generate leads based on event.lead.rules. The method is ran synchronously if there is a low amount of registrations, otherwise it goes through a CRON job that runs in batches.
New fields (3)
-
event_idMany2one → event.eventondelete='cascade'required=Truestring='Event' args: 'event.event' -
event_lead_rule_idsMany2many → event.lead.rulestring='Lead Rules' args: 'event.lead.rule' -
processed_registration_idIntegerhelp='The ID of the last processed event.registration, used to know where to resume.' args: 'Processed Registration'
No public methods.
New fields (13)
-
activeBooleandefault=True args: 'Active' -
company_idMany2one → res.companyhelp='Restrict the trigger of this rule to events belonging to a specific company.\nIf not set, no company restriction will be applied.'string='Company' args: 'res.company' -
event_idMany2one → event.eventdomain="[('company_id', 'in', [company_id or current_company_id, False])]"help='Filter the attendees to include those of this specific event. If not set, no event restriction will be applied.'string='Event' args: 'event.event' -
event_registration_filterTexthelp='Filter the attendees that will or not generate leads.'string='Registrations Domain' -
event_type_idsMany2many → event.typehelp='Filter the attendees to include those of this specific event category. If not set, no event category restriction will be applied.'string='Event Templates' args: 'event.type' -
lead_creation_basisSelectiondefault='attendee'help='Per Attendee: A Lead is created for each Attendee (B2C).\nPer Order: A single Lead is created per Ticket Batch/Sale Order (B2B)'required=Truestring='Create' args: [('attendee', 'Per Attendee'), ('order', 'Per Order')] -
lead_creation_triggerSelectiondefault='create'help='Creation: at attendee creation;\nRegistered: at attendee registration, manually or automatically;\nAttended: when attendance is confirmed and registration set to done;'required=Truestring='When' args: [('create', 'Attendees are created'), ('confirm', 'Attendees are registered'), ('done', 'Attendees attended')] -
lead_idsOne2many → crm.leadgroups='sales_team.group_sale_salesman'string='Created Leads' args: 'crm.lead', 'event_lead_rule_id' -
lead_sales_team_idMany2one → crm.teamhelp='Automatically assign the created leads to this Sales Team.'ondelete='set null'string='Sales Team' args: 'crm.team' -
lead_tag_idsMany2many → crm.taghelp='Automatically add these tags to the created leads.'string='Tags' args: 'crm.tag' -
lead_typeSelectiondefault=<expr>help='Default lead type when this rule is applied.'required=Truestring='Lead Type' args: [('lead', 'Lead'), ('opportunity', 'Opportunity')] -
lead_user_idMany2one → res.usershelp='Automatically assign the created leads to this Salesperson.'string='Salesperson' args: 'res.users' -
nameCharrequired=Truetranslate=True args: 'Rule Name'
-
action_execute_rule(self)
New fields (0)
No new fields.
Public methods (1)-
action_add_rule_button(self)
New fields (2)
-
lead_countIntegercompute='_compute_lead_count'compute_sudo=True args: '# Leads' -
lead_idsMany2many → crm.leadcopy=Falsegroups='sales_team.group_sale_salesman'readonly=Truestring='Leads' args: 'crm.lead'
-
create(self, vals_list)@api.model_create_multiTrigger rules based on registration creation, and check state for rules based on confirmed / done attendees. -
write(self, vals)Update the lead values depending on fields updated in registrations. There are 2 main use cases * first is when we update the partner_id of multiple registrations. It happens when a public user fill its information when they register to an event; * second is when we update specific values of one registration like updating question answers or a contact information (email, phone); Also trigger rules based on confirmed and done attendees (state written to open and done).
Loading…
Loading…
Loading…
Loading…
Loading…