| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
crm_action_helper |
crm action helper | ir.ui.view | qweb | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.list | crm.activity.report | list | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.list.lead | crm.lead | list | New |
crm_case_tree_view_oppor |
crm.lead.list.opportunity | crm.lead | list | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_merge_summary |
crm_lead_merge_summary | ir.ui.view | qweb | New |
crm_lead_pls_update_view_form |
crm.lead.pls.update.view.form | crm.lead.pls.update | form | New |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_graph_forecast |
crm.lead.view.graph.forecast | crm.lead | graph | New |
crm_lead_view_kanban_forecast |
crm.lead.view.kanban.forecast | crm.lead | xpath | Inherits crm.crm_case_kanban_view_leads |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_pivot_forecast |
crm.lead.view.pivot.forecast | crm.lead | pivot | New |
crm_lead_view_search_forecast |
crm.lead.view.search.forecast | crm.lead | xpath | Inherits crm.view_crm_case_opportunities_filter |
crm_lead_view_tree_forecast |
crm.lead.view.list.forecast | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_opportunity_reporting |
crm.lead.list.opportunity.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_reporting |
crm.lead.list.lead.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_leads |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.list | crm.lost.reason | list | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.list | crm.recurring.plan | list | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.list | crm.stage | list | New |
crm_team_member_view_form |
crm.team.member.view.form.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_form |
crm_team_member_view_kanban |
crm.team.member.view.kanban.inherit.crm | crm.team.member | field | Inherits sales_team.crm_team_member_view_kanban |
crm_team_member_view_tree |
crm.team.member.view.list | crm.team.member | field | Inherits sales_team.crm_team_member_view_tree |
crm_team_view_kanban_dashboard |
crm.team.view.kanban.dashboard.inherit.crm | crm.team | data | Inherits sales_team.crm_team_view_kanban_dashboard |
crm_team_view_tree |
crm.team.list.inherit.crm | crm.team | field | Inherits sales_team.crm_team_view_tree |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals_list)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
tag_ids
Many2many
readonly=True
related='lead_id.tag_ids'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
won_status
Selection
readonly=True
string='Is Won'
args: [('won', 'Won'), ('lost', 'Lost'), ('pending', 'Pending')]
init(self)
active
Boolean
default=True
tracking=72
args: 'Active'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
calendar_event_ids
One2many → calendar.event
string='Meetings'
args: 'calendar.event', 'opportunity_id'
campaign_id
Many2one
ondelete='set null'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
commercial_partner_id
Many2one → res.partner
compute='_compute_commercial_partner_id'
domain="[('is_company', '=', True)]"
readonly=False
store=False
string='Customer Company'
args: 'res.partner'
company_currency
Many2one → res.currency
compute='_compute_company_currency'
compute_sudo=True
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
compute='_compute_company_id'
index=True
readonly=False
store=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
index='trigram'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_automation_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Html
duplicate_lead_count
Integer
compute='_compute_potential_lead_duplicates'
compute_sudo=True
string='Potential Duplicate Lead Count'
duplicate_lead_ids
Many2many → crm.lead
compute='_compute_potential_lead_duplicates'
compute_sudo=True
context={'active_test': False}
string='Potential Duplicate Lead'
args: 'crm.lead'
email_domain_criterion
Char
compute='_compute_email_domain_criterion'
index='btree_not_null'
store=True
string='Email Domain Criterion'
email_from
Char
compute='_compute_email_from'
index='trigram'
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_normalized
Char
index='trigram'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
default=0.0
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
is_partner_visible
Boolean
compute='_compute_is_partner_visible'
args: 'Is Partner Visible'
lang_active_count
Integer
compute='_compute_lang_active_count'
lang_code
Char
related='lang_id.code'
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lead_properties
Properties
copy=True
definition='team_id.lead_properties_definition'
args: 'Properties'
lost_reason_id
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=71
args: 'crm.lost.reason'
medium_id
Many2one
ondelete='set null'
meeting_display_date
Date
compute='_compute_meeting_display'
meeting_display_label
Char
compute='_compute_meeting_display'
name
Char
compute='_compute_name'
index='trigram'
readonly=False
required=True
store=True
args: 'Opportunity'
partner_email_update
Boolean
compute='_compute_partner_email_update'
args: 'Partner Email will Update'
partner_id
Many2one → res.partner
check_company=True
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Contact'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
index='trigram'
readonly=False
store=True
tracking=20
args: 'Company Name'
partner_phone_update
Boolean
compute='_compute_partner_phone_update'
args: 'Partner Phone will Update'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_sanitized
Char
index='btree_not_null'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
aggregator='avg'
compute='_compute_probabilities'
copy=False
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
default=0.0
tracking=True
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
store=True
args: 'Prorated MRR'
recurring_revenue_prorated
Monetary
compute='_compute_recurring_revenue_prorated'
currency_field='company_currency'
store=True
args: 'Prorated Recurring Revenues'
referred
Char
source_id
Many2one
ondelete='set null'
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_ids', '=', False), ('team_ids', 'in', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
stage_id_color
Integer
export_string_translation=False
related='stage_id.color'
string='Stage Color'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
check_company=True
compute='_compute_team_id'
index=True
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_company_ids
Many2many → res.company
compute='_compute_user_company_ids'
help='UX: Limit to lead company or all if no company'
args: 'res.company'
user_id
Many2one → res.users
check_company=True
default=<expr>
domain="[('share', '=', False)]"
index=True
string='Salesperson'
tracking=True
args: 'res.users'
website
Char
compute='_compute_website'
help='Website of the contact'
readonly=False
store=True
args: 'Website'
won_status
Selection
compute='_compute_won_status'
store=True
string='Won/Lost'
tracking=70
args: [('won', 'Won'), ('lost', 'Lost'), ('pending', 'Pending')]
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_reschedule_meeting(self)
action_restore(self)
action_schedule_meeting(self, smart_calendar=True)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_show_potential_duplicates(self)
action_unarchive(self)
convert_opportunity(self, partner, user_ids=False, team_id=False)
copy_data(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help_message)
get_import_templates(self)
get_rainbowman_message(self)
log_meeting(self, meeting)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
prepare_pls_tooltip_data(self)
redirect_lead_opportunity_view(self)
search_fetch(self, domain, field_names=None, offset=0, limit=None, order=None)
unlink(self)
write(self, vals)
lead_ids
Many2many → crm.lead
context={'active_test': False}
string='Leads'
args: 'crm.lead'
lost_feedback
Html
sanitize=True
args: 'Closing Note'
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
pls_fields
Many2many → crm.lead.scoring.frequency.field
default=_get_default_pls_fields
args: 'crm.lead.scoring.frequency.field'
pls_start_date
Date
default=_get_default_pls_start_date
required=True
action_update_crm_lead_probabilities(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
ondelete='cascade'
args: 'crm.team', 'Sales Team'
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
color
Integer
default=_get_default_color
args: 'Color'
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
precompute=True
readonly=False
required=True
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer')]
commercial_partner_id
Many2one → res.partner
compute='_compute_commercial_partner_id'
compute_sudo=False
domain=[('is_company', '=', True)]
readonly=False
store=True
args: 'res.partner', 'Company'
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_contact_name
Char
help=False
related='lead_id.contact_name'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
lead_partner_name
Char
help=False
related='lead_id.partner_name'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
context={'active_test': False}
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
domain="[('share', '=', False)]"
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
color
Integer
export_string_translation=False
string='Color'
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
rotting_threshold_days
Integer
default=0
help="Highlight opportunities that haven't been updated for this many days. Set to 0 to disable. Changing this parameter will not affect the rotting status/date of resources last updated before this change."
args: 'Days to rot'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_ids
Many2many → crm.team
ondelete='restrict'
string='Sales Teams'
args: 'crm.team'
write(self, vals)
alias_id
Many2one
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
assignment_auto_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Auto Assignment'
assignment_domain
Char
help='Additional filter domain when fetching unassigned leads to allocate to the team.'
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Lead Assign'
assignment_max
Integer
compute='_compute_assignment_max'
help='Monthly average leads capacity for all salesmen belonging to the team'
args: 'Lead Average Capacity'
assignment_optout
Boolean
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_all_assigned_month_exceeded
Boolean
compute='_compute_lead_all_assigned_month_count'
help='True if the monthly lead assignment count is greater than the maximum assignment limit, false otherwise.'
args: 'Exceed monthly lead assignement'
lead_properties_definition
PropertiesDefinition
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_assign_leads(self)
action_open_leads(self)
action_open_unassigned_leads(self)
action_opportunity_forecast(self)
action_primary_channel_button(self)
action_your_pipeline(self)
unlink(self)
write(self, vals)
assignment_domain
Char
tracking=True
args: 'Assignment Domain'
assignment_domain_preferred
Char
tracking=True
args: 'Preference assignment Domain'
assignment_enabled
Boolean
related='crm_team_id.assignment_enabled'
assignment_max
Integer
default=30
args: 'Average Leads Capacity (on 30 days)'
assignment_optout
Boolean
lead_day_count
Integer
compute='_compute_lead_day_count'
help='Number of leads assigned to this member in the last 24 hours (lost leads excluded)'
args: 'Leads (last 24h)'
lead_month_count
Integer
compute='_compute_lead_month_count'
help='Number of leads assigned to this member in the last 30 days'
args: 'Leads (30 days)'
No public methods.
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
No new fields.
Public methods (1)action_create_calendar_event(self)
crm_auto_assignment_action
Selection
compute='_compute_crm_auto_assignment_data'
help='Manual assign allow to trigger assignment from team form view using an action button. Automatic configures a cron running repeatedly assignment in all teams.'
readonly=False
store=True
string='Auto Assignment Action'
args: [('manual', 'Manually'), ('auto', 'Repeatedly')]
crm_auto_assignment_interval_number
Integer
compute='_compute_crm_auto_assignment_data'
help='Number of interval type between each cron run (e.g. each 2 days or each 4 days)'
readonly=False
store=True
string='Repeat every'
crm_auto_assignment_interval_type
Selection
compute='_compute_crm_auto_assignment_data'
help='Interval type between each cron run (e.g. each 2 days or each 2 hours)'
readonly=False
store=True
string='Auto Assignment Interval Unit'
args: [('minutes', 'Minutes'), ('hours', 'Hours'), ('days', 'Days'), ('weeks', 'Weeks')]
crm_auto_assignment_run_datetime
Datetime
compute='_compute_crm_auto_assignment_data'
readonly=False
store=True
string='Auto Assignment Next Execution Date'
crm_use_auto_assignment
Boolean
config_parameter='crm.lead.auto.assignment'
string='Rule-Based Assignment'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
is_membership_multi
Boolean
config_parameter='sales_team.membership_multi'
string='Multi Teams'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='auto'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_enrich
Boolean
module_crm_iap_mine
Boolean
module_partnership
Boolean
module_website_crm_iap_reveal
Boolean
predictive_lead_scoring_field_labels
Char
compute='_compute_predictive_lead_scoring_field_labels'
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_crm_assign_leads(self)
set_values(self)
opportunity_count
Integer
compute='_compute_opportunity_count'
groups='sales_team.group_sale_salesman'
string='Opportunity Count'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
action_view_opportunity(self)
No new fields.
Public methods (0)No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
CRM assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_action_helper |
crm action helper | ir.ui.view | qweb | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.list | crm.activity.report | list | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.list.lead | crm.lead | list | New |
crm_case_tree_view_oppor |
crm.lead.list.opportunity | crm.lead | list | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_merge_summary |
crm_lead_merge_summary | ir.ui.view | qweb | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | xpath | Inherits base.res_partner_kanban_view |
crm_lead_pls_update_view_form |
crm.lead.pls.update.view.form | crm.lead.pls.update | form | New |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_graph_forecast |
crm.lead.view.graph.forecast | crm.lead | graph | New |
crm_lead_view_kanban_forecast |
crm.lead.view.kanban.forecast | crm.lead | xpath | Inherits crm.crm_case_kanban_view_leads |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_pivot_forecast |
crm.lead.view.pivot.forecast | crm.lead | pivot | New |
crm_lead_view_search_forecast |
crm.lead.view.search.forecast | crm.lead | xpath | Inherits crm.view_crm_case_opportunities_filter |
crm_lead_view_tree_forecast |
crm.lead.view.list.forecast | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_opportunity_reporting |
crm.lead.list.opportunity.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_reporting |
crm.lead.list.lead.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_leads |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.list | crm.lost.reason | list | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.list | crm.recurring.plan | list | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.list | crm.stage | list | New |
crm_team_member_view_form |
crm.team.member.view.form.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_form |
crm_team_member_view_kanban |
crm.team.member.view.kanban.inherit.crm | crm.team.member | field | Inherits sales_team.crm_team_member_view_kanban |
crm_team_member_view_tree |
crm.team.member.view.list | crm.team.member | field | Inherits sales_team.crm_team_member_view_tree |
crm_team_view_kanban_dashboard |
crm.team.view.kanban.dashboard.inherit.crm | crm.team | data | Inherits sales_team.crm_team_view_kanban_dashboard |
crm_team_view_tree |
crm.team.list.inherit.crm | crm.team | field | Inherits sales_team.crm_team_view_tree |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
qunit_suite |
crm tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
tag_ids
Many2many
readonly=True
related='lead_id.tag_ids'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
tracking=True
args: 'Active'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
calendar_event_ids
One2many → calendar.event
string='Meetings'
args: 'calendar.event', 'opportunity_id'
campaign_id
Many2one
ondelete='set null'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one → res.currency
compute='_compute_company_currency'
compute_sudo=True
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
compute='_compute_company_id'
index=True
readonly=False
store=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
index='trigram'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_automation_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Html
duplicate_lead_count
Integer
compute='_compute_potential_lead_duplicates'
string='Potential Duplicate Lead Count'
duplicate_lead_ids
Many2many → crm.lead
compute='_compute_potential_lead_duplicates'
context={'active_test': False}
string='Potential Duplicate Lead'
args: 'crm.lead'
email_domain_criterion
Char
compute='_compute_email_domain_criterion'
index='btree_not_null'
store=True
string='Email Domain Criterion'
email_from
Char
compute='_compute_email_from'
index='trigram'
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_normalized
Char
index='trigram'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
default=0.0
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
is_partner_visible
Boolean
compute='_compute_is_partner_visible'
args: 'Is Partner Visible'
lang_active_count
Integer
compute='_compute_lang_active_count'
lang_code
Char
related='lang_id.code'
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lead_properties
Properties
copy=True
definition='team_id.lead_properties_definition'
args: 'Properties'
lost_reason_id
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
medium_id
Many2one
ondelete='set null'
meeting_display_date
Date
compute='_compute_meeting_display'
meeting_display_label
Char
compute='_compute_meeting_display'
mobile
Char
compute='_compute_mobile'
readonly=False
store=True
args: 'Mobile'
name
Char
compute='_compute_name'
index='trigram'
readonly=False
required=True
store=True
args: 'Opportunity'
partner_email_update
Boolean
compute='_compute_partner_email_update'
args: 'Partner Email will Update'
partner_id
Many2one → res.partner
check_company=True
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
index='trigram'
readonly=False
store=True
tracking=20
args: 'Company Name'
partner_phone_update
Boolean
compute='_compute_partner_phone_update'
args: 'Partner Phone will Update'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_sanitized
Char
index='btree_not_null'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
aggregator='avg'
compute='_compute_probabilities'
copy=False
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
default=0.0
tracking=True
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
store=True
args: 'Prorated MRR'
recurring_revenue_prorated
Monetary
compute='_compute_recurring_revenue_prorated'
currency_field='company_currency'
store=True
args: 'Prorated Recurring Revenues'
referred
Char
source_id
Many2one
ondelete='set null'
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
check_company=True
compute='_compute_team_id'
index=True
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
compute='_compute_title'
readonly=False
store=True
string='Title'
args: 'res.partner.title'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_company_ids
Many2many → res.company
compute='_compute_user_company_ids'
help='UX: Limit to lead company or all if no company'
args: 'res.company'
user_id
Many2one → res.users
check_company=True
default=<expr>
domain="[('share', '=', False)]"
index=True
string='Salesperson'
tracking=True
args: 'res.users'
website
Char
compute='_compute_website'
help='Website of the contact'
readonly=False
store=True
args: 'Website'
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_reschedule_meeting(self)
action_schedule_meeting(self, smart_calendar=True)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_show_potential_duplicates(self)
action_snooze(self)
convert_opportunity(self, partner, user_ids=False, team_id=False)
copy_data(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help_message)
get_import_templates(self)
get_rainbowman_message(self)
log_meeting(self, meeting)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
redirect_lead_opportunity_view(self)
search_fetch(self, domain, field_names, offset=0, limit=None, order=None)
toggle_active(self)
unlink(self)
write(self, vals)
lead_ids
Many2many → crm.lead
string='Leads'
args: 'crm.lead'
lost_feedback
Html
sanitize=True
args: 'Closing Note'
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
pls_fields
Many2many → crm.lead.scoring.frequency.field
default=_get_default_pls_fields
args: 'crm.lead.scoring.frequency.field'
pls_start_date
Date
default=_get_default_pls_start_date
required=True
action_update_crm_lead_probabilities(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
ondelete='cascade'
args: 'crm.team', 'Sales Team'
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
readonly=False
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')]
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
domain="[('share', '=', False)]"
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
assignment_auto_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Auto Assignment'
assignment_domain
Char
help='Additional filter domain when fetching unassigned leads to allocate to the team.'
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Lead Assign'
assignment_max
Integer
compute='_compute_assignment_max'
help='Monthly average leads capacity for all salesmen belonging to the team'
args: 'Lead Average Capacity'
assignment_optout
Boolean
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_all_assigned_month_exceeded
Boolean
compute='_compute_lead_all_assigned_month_count'
help='True if the monthly lead assignment count is greater than the maximum assignment limit, false otherwise.'
args: 'Exceed monthly lead assignement'
lead_properties_definition
PropertiesDefinition
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
opportunities_amount
Monetary
compute='_compute_opportunities_data'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities_data'
string='# Opportunities'
opportunities_overdue_amount
Monetary
compute='_compute_opportunities_overdue_data'
string='Overdue Opportunities Revenues'
opportunities_overdue_count
Integer
compute='_compute_opportunities_overdue_data'
string='# Overdue Opportunities'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_assign_leads(self)
action_opportunity_forecast(self)
action_primary_channel_button(self)
action_your_pipeline(self)
unlink(self)
write(self, vals)
assignment_domain
Char
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
related='crm_team_id.assignment_enabled'
assignment_max
Integer
default=30
args: 'Average Leads Capacity (on 30 days)'
assignment_optout
Boolean
lead_day_count
Integer
compute='_compute_lead_day_count'
help='Lead assigned to this member this last day (lost one excluded)'
args: 'Leads (last 24h)'
lead_month_count
Integer
compute='_compute_lead_month_count'
help='Lead assigned to this member those last 30 days'
args: 'Leads (30 days)'
No public methods.
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
No new fields.
Public methods (1)action_create_calendar_event(self)
crm_auto_assignment_action
Selection
compute='_compute_crm_auto_assignment_data'
help='Manual assign allow to trigger assignment from team form view using an action button. Automatic configures a cron running repeatedly assignment in all teams.'
readonly=False
store=True
string='Auto Assignment Action'
args: [('manual', 'Manually'), ('auto', 'Repeatedly')]
crm_auto_assignment_interval_number
Integer
compute='_compute_crm_auto_assignment_data'
help='Number of interval type between each cron run (e.g. each 2 days or each 4 days)'
readonly=False
store=True
string='Repeat every'
crm_auto_assignment_interval_type
Selection
compute='_compute_crm_auto_assignment_data'
help='Interval type between each cron run (e.g. each 2 days or each 2 hours)'
readonly=False
store=True
string='Auto Assignment Interval Unit'
args: [('minutes', 'Minutes'), ('hours', 'Hours'), ('days', 'Days'), ('weeks', 'Weeks')]
crm_auto_assignment_run_datetime
Datetime
compute='_compute_crm_auto_assignment_data'
readonly=False
store=True
string='Auto Assignment Next Execution Date'
crm_use_auto_assignment
Boolean
config_parameter='crm.lead.auto.assignment'
string='Rule-Based Assignment'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
is_membership_multi
Boolean
config_parameter='sales_team.membership_multi'
string='Multi Teams'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='auto'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_enrich
Boolean
module_crm_iap_mine
Boolean
module_website_crm_iap_reveal
Boolean
predictive_lead_scoring_field_labels
Char
compute='_compute_predictive_lead_scoring_field_labels'
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_crm_assign_leads(self)
set_values(self)
opportunity_count
Integer
compute='_compute_opportunity_count'
groups='sales_team.group_sale_salesman'
string='Opportunity Count'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
action_view_opportunity(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
CRM assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_action_helper |
crm action helper | ir.ui.view | qweb | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_merge_summary |
crm_lead_merge_summary | ir.ui.view | qweb | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_pls_update_view_form |
crm.lead.pls.update.view.form | crm.lead.pls.update | form | New |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_graph_forecast |
crm.lead.view.graph.forecast | crm.lead | graph | New |
crm_lead_view_kanban_forecast |
crm.lead.view.kanban.forecast | crm.lead | xpath | Inherits crm.crm_case_kanban_view_leads |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_pivot_forecast |
crm.lead.view.pivot.forecast | crm.lead | pivot | New |
crm_lead_view_search_forecast |
crm.lead.view.search.forecast | crm.lead | xpath | Inherits crm.view_crm_case_opportunities_filter |
crm_lead_view_tree_forecast |
crm.lead.view.tree.forecast | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_opportunity_reporting |
crm.lead.tree.opportunity.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_reporting |
crm.lead.tree.lead.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_leads |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.tree | crm.lost.reason | tree | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.tree | crm.recurring.plan | tree | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_member_view_form |
crm.team.member.view.form.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_form |
crm_team_member_view_kanban |
crm.team.member.view.kanban.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_kanban |
crm_team_member_view_tree |
crm.team.member.view.tree | crm.team.member | field | Inherits sales_team.crm_team_member_view_tree |
crm_team_view_kanban_dashboard |
crm.team.view.kanban.dashboard.inherit.crm | crm.team | data | Inherits sales_team.crm_team_view_kanban_dashboard |
crm_team_view_tree |
crm.team.tree.inherit.crm | crm.team | field | Inherits sales_team.crm_team_view_tree |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
qunit_suite |
crm tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
res_partner_view_form_simple_form |
res.partner.view.form.simple.form.crm | res.partner | data | Inherits base.view_partner_simple_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
tag_ids
Many2many
readonly=True
related='lead_id.tag_ids'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
tracking=True
args: 'Active'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
calendar_event_ids
One2many → calendar.event
string='Meetings'
args: 'calendar.event', 'opportunity_id'
campaign_id
Many2one
ondelete='set null'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one → res.currency
compute='_compute_company_currency'
compute_sudo=True
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
compute='_compute_company_id'
index=True
readonly=False
store=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
index='trigram'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_automation_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Html
duplicate_lead_count
Integer
compute='_compute_potential_lead_duplicates'
string='Potential Duplicate Lead Count'
duplicate_lead_ids
Many2many → crm.lead
compute='_compute_potential_lead_duplicates'
context={'active_test': False}
string='Potential Duplicate Lead'
args: 'crm.lead'
email_domain_criterion
Char
compute='_compute_email_domain_criterion'
index='btree_not_null'
store=True
string='Email Domain Criterion'
unaccent=False
email_from
Char
compute='_compute_email_from'
index='trigram'
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_normalized
Char
index='trigram'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
is_partner_visible
Boolean
compute='_compute_is_partner_visible'
args: 'Is Partner Visible'
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lang_active_count
Integer
compute='_compute_lang_active_count'
lang_code
Char
related='lang_id.code'
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lead_properties
Properties
copy=True
definition='team_id.lead_properties_definition'
args: 'Properties'
lost_reason_id
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
medium_id
Many2one
ondelete='set null'
meeting_display_date
Date
compute='_compute_meeting_display'
meeting_display_label
Char
compute='_compute_meeting_display'
mobile
Char
compute='_compute_mobile'
readonly=False
store=True
args: 'Mobile'
name
Char
compute='_compute_name'
index='trigram'
readonly=False
required=True
store=True
args: 'Opportunity'
partner_email_update
Boolean
compute='_compute_partner_email_update'
args: 'Partner Email will Update'
partner_id
Many2one → res.partner
check_company=True
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
index='trigram'
readonly=False
store=True
tracking=20
args: 'Company Name'
partner_phone_update
Boolean
compute='_compute_partner_phone_update'
args: 'Partner Phone will Update'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_sanitized
Char
index='btree_not_null'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
compute='_compute_probabilities'
copy=False
group_operator='avg'
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
store=True
args: 'Prorated MRR'
recurring_revenue_prorated
Monetary
compute='_compute_recurring_revenue_prorated'
currency_field='company_currency'
store=True
args: 'Prorated Recurring Revenues'
referred
Char
source_id
Many2one
ondelete='set null'
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
check_company=True
compute='_compute_team_id'
index=True
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
compute='_compute_title'
readonly=False
store=True
string='Title'
args: 'res.partner.title'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_company_ids
Many2many → res.company
compute='_compute_user_company_ids'
help='UX: Limit to lead company or all if no company'
args: 'res.company'
user_id
Many2one → res.users
check_company=True
default=<expr>
domain="[('share', '=', False)]"
index=True
string='Salesperson'
tracking=True
args: 'res.users'
website
Char
compute='_compute_website'
help='Website of the contact'
readonly=False
store=True
args: 'Website'
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_reschedule_meeting(self)
action_schedule_meeting(self, smart_calendar=True)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_show_potential_duplicates(self)
action_snooze(self)
convert_opportunity(self, partner, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help_message)
get_import_templates(self)
get_rainbowman_message(self)
log_meeting(self, meeting)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
redirect_lead_opportunity_view(self)
search_fetch(self, domain, field_names, offset=0, limit=None, order=None)
toggle_active(self)
unlink(self)
write(self, vals)
lead_ids
Many2many → crm.lead
string='Leads'
args: 'crm.lead'
lost_feedback
Html
sanitize=True
args: 'Closing Note'
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
pls_fields
Many2many → crm.lead.scoring.frequency.field
default=_get_default_pls_fields
args: 'crm.lead.scoring.frequency.field'
pls_start_date
Date
default=_get_default_pls_start_date
required=True
action_update_crm_lead_probabilities(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
ondelete='cascade'
args: 'crm.team', 'Sales Team'
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
readonly=False
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')]
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
domain="[('share', '=', False)]"
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
assignment_auto_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Auto Assignment'
assignment_domain
Char
help='Additional filter domain when fetching unassigned leads to allocate to the team.'
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Lead Assign'
assignment_max
Integer
compute='_compute_assignment_max'
help='Monthly average leads capacity for all salesmen belonging to the team'
args: 'Lead Average Capacity'
assignment_optout
Boolean
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_all_assigned_month_exceeded
Boolean
compute='_compute_lead_all_assigned_month_count'
help='True if the monthly lead assignment count is greater than the maximum assignment limit, false otherwise.'
args: 'Exceed monthly lead assignement'
lead_properties_definition
PropertiesDefinition
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
opportunities_amount
Monetary
compute='_compute_opportunities_data'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities_data'
string='# Opportunities'
opportunities_overdue_amount
Monetary
compute='_compute_opportunities_overdue_data'
string='Overdue Opportunities Revenues'
opportunities_overdue_count
Integer
compute='_compute_opportunities_overdue_data'
string='# Overdue Opportunities'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_assign_leads(self, work_days=1, log=True)
action_opportunity_forecast(self)
action_primary_channel_button(self)
action_your_pipeline(self)
unlink(self)
write(self, vals)
assignment_domain
Char
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
related='crm_team_id.assignment_enabled'
assignment_max
Integer
default=30
args: 'Average Leads Capacity (on 30 days)'
assignment_optout
Boolean
lead_month_count
Integer
compute='_compute_lead_month_count'
help='Lead assigned to this member those last 30 days'
args: 'Leads (30 days)'
No public methods.
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
No new fields.
Public methods (1)action_create_calendar_event(self)
crm_auto_assignment_action
Selection
compute='_compute_crm_auto_assignment_data'
help='Manual assign allow to trigger assignment from team form view using an action button. Automatic configures a cron running repeatedly assignment in all teams.'
readonly=False
store=True
string='Auto Assignment Action'
args: [('manual', 'Manually'), ('auto', 'Repeatedly')]
crm_auto_assignment_interval_number
Integer
compute='_compute_crm_auto_assignment_data'
help='Number of interval type between each cron run (e.g. each 2 days or each 4 days)'
readonly=False
store=True
string='Repeat every'
crm_auto_assignment_interval_type
Selection
compute='_compute_crm_auto_assignment_data'
help='Interval type between each cron run (e.g. each 2 days or each 2 hours)'
readonly=False
store=True
string='Auto Assignment Interval Unit'
args: [('minutes', 'Minutes'), ('hours', 'Hours'), ('days', 'Days'), ('weeks', 'Weeks')]
crm_auto_assignment_run_datetime
Datetime
compute='_compute_crm_auto_assignment_data'
readonly=False
store=True
string='Auto Assignment Next Execution Date'
crm_use_auto_assignment
Boolean
config_parameter='crm.lead.auto.assignment'
string='Rule-Based Assignment'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
is_membership_multi
Boolean
config_parameter='sales_team.membership_multi'
string='Multi Teams'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='auto'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_enrich
Boolean
module_crm_iap_mine
Boolean
module_website_crm_iap_reveal
Boolean
predictive_lead_scoring_field_labels
Char
compute='_compute_predictive_lead_scoring_field_labels'
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_crm_assign_leads(self)
set_values(self)
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
args: 'crm.team'
action_view_opportunity(self)
default_get(self, fields)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
CRM assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_action_helper |
crm action helper | ir.ui.view | qweb | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_merge_summary |
crm_lead_merge_summary | ir.ui.view | qweb | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_pls_update_view_form |
crm.lead.pls.update.view.form | crm.lead.pls.update | form | New |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_graph_forecast |
crm.lead.view.graph.forecast | crm.lead | graph | New |
crm_lead_view_kanban_forecast |
crm.lead.view.kanban.forecast | crm.lead | xpath | Inherits crm.crm_case_kanban_view_leads |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_pivot_forecast |
crm.lead.view.pivot.forecast | crm.lead | pivot | New |
crm_lead_view_search_forecast |
crm.lead.view.search.forecast | crm.lead | xpath | Inherits crm.view_crm_case_opportunities_filter |
crm_lead_view_tree_forecast |
crm.lead.view.tree.forecast | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_tree_reporting |
crm.lead.tree.lead.reporting | crm.lead | xpath | Inherits crm.crm_case_tree_view_leads |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.tree | crm.lost.reason | tree | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.tree | crm.recurring.plan | tree | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_member_view_form |
crm.team.member.view.form.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_form |
crm_team_member_view_kanban |
crm.team.member.view.kanban.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_kanban |
crm_team_member_view_tree |
crm.team.member.view.tree | crm.team.member | field | Inherits sales_team.crm_team_member_view_tree |
crm_team_view_kanban_dashboard |
crm.team.view.kanban.dashboard.inherit.crm | crm.team | data | Inherits sales_team.crm_team_view_kanban_dashboard |
crm_team_view_tree |
crm.team.tree.inherit.crm | crm.team | field | Inherits sales_team.crm_team_view_tree |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
qunit_suite |
crm tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
No new fields.
Public methods (0)No public methods.
active
Boolean
default=True
tracking=True
args: 'Active'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
calendar_event_count
Integer
compute='_compute_calendar_event_count'
args: '# Meetings'
calendar_event_ids
One2many → calendar.event
string='Meetings'
args: 'calendar.event', 'opportunity_id'
campaign_id
Many2one
ondelete='set null'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one → res.currency
compute='_compute_company_currency'
compute_sudo=True
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
compute='_compute_company_id'
index=True
readonly=False
store=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Html
duplicate_lead_count
Integer
compute='_compute_potential_lead_duplicates'
string='Potential Duplicate Lead Count'
duplicate_lead_ids
Many2many → crm.lead
compute='_compute_potential_lead_duplicates'
context={'active_test': False}
string='Potential Duplicate Lead'
args: 'crm.lead'
email_from
Char
compute='_compute_email_from'
index='trigram'
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
is_partner_visible
Boolean
compute='_compute_is_partner_visible'
args: 'Is Partner Visible'
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lang_active_count
Integer
compute='_compute_lang_active_count'
lang_code
Char
related='lang_id.code'
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lead_properties
Properties
copy=True
definition='team_id.lead_properties_definition'
args: 'Properties'
lost_reason_id
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
medium_id
Many2one
ondelete='set null'
mobile
Char
compute='_compute_mobile'
readonly=False
store=True
args: 'Mobile'
name
Char
compute='_compute_name'
index='trigram'
readonly=False
required=True
store=True
args: 'Opportunity'
partner_email_update
Boolean
compute='_compute_partner_email_update'
args: 'Partner Email will Update'
partner_id
Many2one → res.partner
check_company=True
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
readonly=False
store=True
tracking=20
args: 'Company Name'
partner_phone_update
Boolean
compute='_compute_partner_phone_update'
args: 'Partner Phone will Update'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
compute='_compute_probabilities'
copy=False
group_operator='avg'
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
store=True
args: 'Prorated MRR'
referred
Char
source_id
Many2one
ondelete='set null'
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
check_company=True
compute='_compute_team_id'
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
index=True
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
compute='_compute_title'
readonly=False
store=True
string='Title'
args: 'res.partner.title'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_company_ids
Many2many → res.company
compute='_compute_user_company_ids'
help='UX: Limit to lead company or all if no company'
args: 'res.company'
user_id
Many2one → res.users
check_company=True
default=<expr>
domain="['&', ('share', '=', False), ('company_ids', 'in', user_company_ids)]"
index=True
string='Salesperson'
tracking=True
args: 'res.users'
website
Char
compute='_compute_website'
help='Website of the contact'
readonly=False
store=True
args: 'Website'
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_reschedule_meeting(self)
action_schedule_meeting(self, smart_calendar=True)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_show_potential_duplicates(self)
action_snooze(self)
convert_opportunity(self, partner, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help)
get_import_templates(self)
get_rainbowman_message(self)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
redirect_lead_opportunity_view(self)
search(self, args, offset=0, limit=None, order=None, count=False)
toggle_active(self)
unlink(self)
write(self, vals)
lost_feedback
Html
sanitize=True
args: 'Closing Note'
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
pls_fields
Many2many → crm.lead.scoring.frequency.field
default=_get_default_pls_fields
args: 'crm.lead.scoring.frequency.field'
pls_start_date
Date
default=_get_default_pls_start_date
required=True
action_update_crm_lead_probabilities(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
ondelete='cascade'
args: 'crm.team', 'Sales Team'
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
readonly=False
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')]
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
domain="[('share', '=', False)]"
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
alias_user_id
Many2one → res.users
domain=<expr>
inherited=True
readonly=False
related='alias_id.alias_user_id'
args: 'res.users'
assignment_auto_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Auto Assignment'
assignment_domain
Char
help='Additional filter domain when fetching unassigned leads to allocate to the team.'
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Lead Assign'
assignment_max
Integer
compute='_compute_assignment_max'
help='Monthly average leads capacity for all salesmen belonging to the team'
args: 'Lead Average Capacity'
assignment_optout
Boolean
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_properties_definition
PropertiesDefinition
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
opportunities_amount
Monetary
compute='_compute_opportunities_data'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities_data'
string='# Opportunities'
opportunities_overdue_amount
Monetary
compute='_compute_opportunities_overdue_data'
string='Overdue Opportunities Revenues'
opportunities_overdue_count
Integer
compute='_compute_opportunities_overdue_data'
string='# Overdue Opportunities'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_assign_leads(self, work_days=1, log=True)
action_opportunity_forecast(self)
action_primary_channel_button(self)
action_your_pipeline(self)
unlink(self)
write(self, vals)
assignment_domain
Char
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
related='crm_team_id.assignment_enabled'
assignment_max
Integer
default=30
args: 'Average Leads Capacity (on 30 days)'
assignment_optout
Boolean
lead_month_count
Integer
compute='_compute_lead_month_count'
help='Lead assigned to this member those last 30 days'
args: 'Leads (30 days)'
No public methods.
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
No new fields.
Public methods (1)action_create_calendar_event(self)
crm_auto_assignment_action
Selection
compute='_compute_crm_auto_assignment_data'
help='Manual assign allow to trigger assignment from team form view using an action button. Automatic configures a cron running repeatedly assignment in all teams.'
readonly=False
store=True
string='Auto Assignment Action'
args: [('manual', 'Manually'), ('auto', 'Repeatedly')]
crm_auto_assignment_interval_number
Integer
compute='_compute_crm_auto_assignment_data'
help='Number of interval type between each cron run (e.g. each 2 days or each 4 days)'
readonly=False
store=True
string='Repeat every'
crm_auto_assignment_interval_type
Selection
compute='_compute_crm_auto_assignment_data'
help='Interval type between each cron run (e.g. each 2 days or each 2 hours)'
readonly=False
store=True
string='Auto Assignment Interval Unit'
args: [('minutes', 'Minutes'), ('hours', 'Hours'), ('days', 'Days'), ('weeks', 'Weeks')]
crm_auto_assignment_run_datetime
Datetime
compute='_compute_crm_auto_assignment_data'
readonly=False
store=True
string='Auto Assignment Next Execution Date'
crm_use_auto_assignment
Boolean
config_parameter='crm.lead.auto.assignment'
string='Rule-Based Assignment'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
is_membership_multi
Boolean
config_parameter='sales_team.membership_multi'
string='Multi Teams'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='auto'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_enrich
Boolean
module_crm_iap_mine
Boolean
module_website_crm_iap_reveal
Boolean
predictive_lead_scoring_field_labels
Char
compute='_compute_predictive_lead_scoring_field_labels'
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_crm_assign_leads(self)
set_values(self)
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
ondelete='set null'
precompute=True
readonly=False
store=True
string='Sales Team'
args: 'crm.team'
action_view_opportunity(self)
default_get(self, fields)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
CRM assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_action_helper |
crm action helper | ir.ui.view | qweb | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_pls_update_view_form |
crm.lead.pls.update.view.form | crm.lead.pls.update | form | New |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_graph_forecast |
crm.lead.view.graph.forecast | crm.lead | graph | New |
crm_lead_view_kanban_forecast |
crm.lead.view.kanban.forecast | crm.lead | xpath | Inherits crm.crm_case_kanban_view_leads |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_pivot_forecast |
crm.lead.view.pivot.forecast | crm.lead | pivot | New |
crm_lead_view_search_forecast |
crm.lead.view.search.forecast | crm.lead | xpath | Inherits crm.view_crm_case_opportunities_filter |
crm_lead_view_tree_forecast |
crm.lead.view.tree.forecast | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.tree | crm.lost.reason | tree | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.tree | crm.recurring.plan | tree | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_member_view_form |
crm.team.member.view.form.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_form |
crm_team_member_view_kanban |
crm.team.member.view.kanban.inherit.crm | crm.team.member | xpath | Inherits sales_team.crm_team_member_view_kanban |
crm_team_member_view_tree |
crm.team.member.view.tree | crm.team.member | field | Inherits sales_team.crm_team_member_view_tree |
crm_team_view_kanban_dashboard |
crm.team.view.kanban.dashboard.inherit.crm | crm.team | data | Inherits sales_team.crm_team_view_kanban_dashboard |
crm_team_view_tree |
crm.team.tree.inherit.crm | crm.team | field | Inherits sales_team.crm_team_view_tree |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
qunit_suite |
crm tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
tracking=True
args: 'Active'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
calendar_event_count
Integer
compute='_compute_calendar_event_count'
args: '# Meetings'
calendar_event_ids
One2many → calendar.event
string='Meetings'
args: 'calendar.event', 'opportunity_id'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one → res.currency
compute='_compute_company_currency'
readonly=True
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
compute='_compute_company_id'
index=True
readonly=False
store=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Html
duplicate_lead_count
Integer
compute='_compute_potential_lead_duplicates'
string='Potential Duplicate Lead Count'
duplicate_lead_ids
Many2many → crm.lead
compute='_compute_potential_lead_duplicates'
context={'active_test': False}
string='Potential Duplicate Lead'
args: 'crm.lead'
email_from
Char
compute='_compute_email_from'
index=True
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lost_reason
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
mobile
Char
compute='_compute_mobile'
readonly=False
store=True
args: 'Mobile'
name
Char
compute='_compute_name'
index=True
readonly=False
required=True
store=True
args: 'Opportunity'
partner_email_update
Boolean
compute='_compute_partner_email_update'
args: 'Partner Email will Update'
partner_id
Many2one → res.partner
check_company=True
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
readonly=False
store=True
tracking=20
args: 'Company Name'
partner_phone_update
Boolean
compute='_compute_partner_phone_update'
args: 'Partner Phone will Update'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
compute='_compute_probabilities'
copy=False
group_operator='avg'
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
groups='crm.group_use_recurring_revenues'
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
tracking=True
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
store=True
args: 'Prorated MRR'
referred
Char
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
check_company=True
compute='_compute_team_id'
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
index=True
ondelete='set null'
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
compute='_compute_title'
readonly=False
store=True
string='Title'
args: 'res.partner.title'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_company_ids
Many2many → res.company
compute='_compute_user_company_ids'
help='UX: Limit to lead company or all if no company'
args: 'res.company'
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
check_company=True
default=<expr>
domain="['&', ('share', '=', False), ('company_ids', 'in', user_company_ids)]"
index=True
string='Salesperson'
tracking=True
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
website
Char
compute='_compute_website'
help='Website of the contact'
index=True
readonly=False
store=True
args: 'Website'
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_reschedule_meeting(self)
action_schedule_meeting(self, smart_calendar=True)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_show_potential_duplicates(self)
action_snooze(self)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help)
get_import_templates(self)
get_rainbowman_message(self)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
redirect_lead_opportunity_view(self)
search(self, args, offset=0, limit=None, order=None, count=False)
toggle_active(self)
unlink(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
pls_fields
Many2many → crm.lead.scoring.frequency.field
default=_get_default_pls_fields
args: 'crm.lead.scoring.frequency.field'
pls_start_date
Date
default=_get_default_pls_start_date
required=True
action_update_crm_lead_probabilities(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
ondelete='cascade'
args: 'crm.team', 'Sales Team'
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
readonly=False
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')]
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
view_init(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
index=True
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
domain="[('share', '=', False)]"
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
alias_user_id
Many2one → res.users
domain=<expr>
inherited=True
readonly=False
related='alias_id.alias_user_id'
args: 'res.users'
assignment_auto_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Auto Assignment'
assignment_domain
Char
help='Additional filter domain when fetching unassigned leads to allocate to the team.'
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
compute='_compute_assignment_enabled'
args: 'Lead Assign'
assignment_max
Integer
compute='_compute_assignment_max'
help='Monthly average leads capacity for all salesmen belonging to the team'
args: 'Lead Average Capacity'
assignment_optout
Boolean
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
opportunities_amount
Monetary
compute='_compute_opportunities_data'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities_data'
string='# Opportunities'
opportunities_overdue_amount
Monetary
compute='_compute_opportunities_overdue_data'
string='Overdue Opportunities Revenues'
opportunities_overdue_count
Integer
compute='_compute_opportunities_overdue_data'
string='# Overdue Opportunities'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_assign_leads(self, work_days=1, log=True)
action_opportunity_forecast(self)
action_primary_channel_button(self)
action_your_pipeline(self)
unlink(self)
write(self, vals)
assignment_domain
Char
tracking=True
args: 'Assignment Domain'
assignment_enabled
Boolean
related='crm_team_id.assignment_enabled'
assignment_max
Integer
default=30
args: 'Average Leads Capacity (on 30 days)'
assignment_optout
Boolean
lead_month_count
Integer
compute='_compute_lead_month_count'
help='Lead assigned to this member those last 30 days'
args: 'Leads (30 days)'
No public methods.
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
No new fields.
Public methods (1)action_create_calendar_event(self)
crm_auto_assignment_action
Selection
compute='_compute_crm_auto_assignment_data'
help='Manual assign allow to trigger assignment from team form view using an action button. Automatic configures a cron running repeatedly assignment in all teams.'
readonly=False
store=True
string='Auto Assignment Action'
args: [('manual', 'Manually'), ('auto', 'Repeatedly')]
crm_auto_assignment_interval_number
Integer
compute='_compute_crm_auto_assignment_data'
help='Number of interval type between each cron run (e.g. each 2 days or each 4 days)'
readonly=False
store=True
string='Repeat every'
crm_auto_assignment_interval_type
Selection
compute='_compute_crm_auto_assignment_data'
help='Interval type between each cron run (e.g. each 2 days or each 2 hours)'
readonly=False
store=True
string='Auto Assignment Interval Unit'
args: [('minutes', 'Minutes'), ('hours', 'Hours'), ('days', 'Days'), ('weeks', 'Weeks')]
crm_auto_assignment_run_datetime
Datetime
compute='_compute_crm_auto_assignment_data'
readonly=False
store=True
string='Auto Assignment Next Execution Date'
crm_use_auto_assignment
Boolean
config_parameter='crm.lead.auto.assignment'
string='Rule-Based Assignment'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
is_membership_multi
Boolean
config_parameter='sales_team.membership_multi'
string='Multi Teams'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='manual'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_enrich
Boolean
module_crm_iap_mine
Boolean
module_website_crm_iap_reveal
Boolean
predictive_lead_scoring_field_labels
Char
compute='_compute_predictive_lead_scoring_field_labels'
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_crm_assign_leads(self)
set_values(self)
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
ondelete='set null'
string='Sales Team'
args: 'crm.team'
action_view_opportunity(self)
default_get(self, fields)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
CRM assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_list_activities |
crm.lead.list.activities | crm.lead | xpath | Inherits crm.crm_case_tree_view_oppor |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.tree | crm.lost.reason | tree | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_recurring_plan_view_search |
crm.recurring.plan.view.search | crm.recurring.plan | search | New |
crm_recurring_plan_view_tree |
crm.recurring.plan.view.tree | crm.recurring.plan | tree | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
qunit_suite |
crm tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_my_activities_filter |
crm.lead.search.myactivities | crm.lead | xpath | Inherits crm.view_crm_case_leads_filter |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
index=True
ondelete='set null'
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
tracking=True
args: 'Active'
activity_date_deadline_my
Date
compute='_compute_activity_date_deadline_my'
compute_sudo=False
groups='base.group_user'
readonly=True
search='_search_activity_date_deadline_my'
store=False
args: 'My Activities Deadline'
automated_probability
Float
compute='_compute_probabilities'
readonly=True
store=True
args: 'Automated Probability'
city
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'City'
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one → res.currency
readonly=True
related='company_id.currency_id'
string='Currency'
args: 'res.currency'
company_id
Many2one → res.company
default=<expr>
index=True
string='Company'
args: 'res.company'
contact_name
Char
compute='_compute_contact_name'
readonly=False
store=True
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
compute='_compute_partner_address_values'
readonly=False
store=True
string='Country'
args: 'res.country'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
compute='_compute_date_last_stage_update'
index=True
readonly=True
store=True
args: 'Last Stage Update'
date_open
Datetime
compute='_compute_date_open'
readonly=True
store=True
args: 'Assignment Date'
day_close
Float
compute='_compute_day_close'
store=True
args: 'Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
args: 'Days to Assign'
description
Text
email_from
Char
compute='_compute_email_from'
index=True
inverse='_inverse_email_from'
readonly=False
store=True
tracking=40
args: 'Email'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Expected Revenue'
function
Char
compute='_compute_function'
readonly=False
store=True
args: 'Job Position'
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lang_id
Many2one → res.lang
compute='_compute_lang_id'
readonly=False
store=True
string='Language'
args: 'res.lang'
lost_reason
Many2one → crm.lost.reason
index=True
ondelete='restrict'
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
mobile
Char
compute='_compute_mobile'
readonly=False
store=True
args: 'Mobile'
name
Char
compute='_compute_name'
index=True
readonly=False
required=True
store=True
args: 'Opportunity'
partner_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
compute='_compute_partner_name'
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
readonly=False
store=True
tracking=20
args: 'Company Name'
phone
Char
compute='_compute_phone'
inverse='_inverse_phone'
readonly=False
store=True
tracking=50
args: 'Phone'
phone_mobile_search
Char
search='_search_phone_mobile_search'
store=False
args: 'Phone/Mobile'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
compute='_compute_probabilities'
copy=False
group_operator='avg'
readonly=False
store=True
args: 'Probability'
prorated_revenue
Monetary
compute='_compute_prorated_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
recurring_plan
Many2one → crm.recurring.plan
groups='crm.group_use_recurring_revenues'
string='Recurring Plan'
args: 'crm.recurring.plan'
recurring_revenue
Monetary
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
args: 'Recurring Revenues'
recurring_revenue_monthly
Monetary
compute='_compute_recurring_revenue_monthly'
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
store=True
args: 'Expected MRR'
recurring_revenue_monthly_prorated
Monetary
compute='_compute_recurring_revenue_monthly_prorated'
currency_field='company_currency'
groups='crm.group_use_recurring_revenues'
store=True
args: 'Prorated MRR'
referred
Char
ribbon_message
Char
compute='_compute_ribbon_message'
args: 'Ribbon message'
stage_id
Many2one → crm.stage
compute='_compute_stage_id'
copy=False
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
readonly=False
store=True
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
compute='_compute_partner_address_values'
domain="[('country_id', '=?', country_id)]"
readonly=False
store=True
string='State'
args: 'res.country.state'
street
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street'
street2
Char
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Street2'
tag_ids
Many2many → crm.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.tag', 'crm_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
index=True
readonly=False
store=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
compute='_compute_title'
readonly=False
store=True
string='Title'
args: 'res.partner.title'
type
Selection
default=<expr>
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
default=<expr>
index=True
string='Salesperson'
tracking=True
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
website
Char
compute='_compute_website'
help='Website of the contact'
index=True
readonly=False
store=True
args: 'Website'
zip
Char
change_default=True
compute='_compute_partner_address_values'
readonly=False
store=True
args: 'Zip'
action_schedule_meeting(self)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
action_snooze(self)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals_list)
get_empty_list_help(self, help)
get_import_templates(self)
get_rainbowman_message(self)
handle_partner_assignment(self, force_partner_id=False, create_missing=True)
handle_salesmen_assignment(self, user_ids=None, team_id=False)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_dependences(self, opportunities)
merge_opportunity(self, user_id=False, team_id=False, auto_unlink=True)
message_new(self, msg_dict, custom_values=None)
redirect_lead_opportunity_view(self)
search(self, args, offset=0, limit=None, order=None, count=False)
toggle_active(self)
unlink(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
ondelete='cascade'
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
action
Selection
compute='_compute_action'
compute_sudo=False
readonly=False
store=True
string='Related Customer'
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')]
duplicated_lead_ids
Many2many → crm.lead
compute='_compute_duplicated_lead_ids'
compute_sudo=False
context={'active_test': False}
readonly=False
store=True
string='Opportunities'
args: 'crm.lead'
force_assignment
Boolean
default=True
help='If checked, forces salesman to be updated on updated opportunities even if already set.'
args: 'Force assignment'
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Associated Lead'
name
Selection
compute='_compute_name'
compute_sudo=False
readonly=False
store=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
partner_id
Many2one → res.partner
compute='_compute_partner_id'
compute_sudo=False
readonly=False
store=True
args: 'res.partner', 'Customer'
team_id
Many2one → crm.team
compute='_compute_team_id'
compute_sudo=False
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
compute='_compute_user_id'
compute_sudo=False
readonly=False
store=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
view_init(self, fields)
action
Selection
ondelete={'each_exist_or_create': <expr>}
selection_add=[('each_exist_or_create', 'Use existing partner or create')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignment
Boolean
default=False
lead_id
Many2one
required=False
lead_tomerge_ids
Many2many → crm.lead
context={'active_test': False}
default=<expr>
string='Active Leads'
args: 'crm.lead', 'crm_convert_lead_mass_lead_rel'
user_ids
Many2many → res.users
string='Salespersons'
args: 'res.users'
action_mass_convert(self)
active
Boolean
default=True
args: 'Active'
leads_count
Integer
compute='_compute_leads_count'
args: 'Leads Count'
name
Char
required=True
translate=True
args: 'Description'
action_lost_leads(self)
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
compute='_compute_team_id'
index=True
readonly=False
store=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Plan Name'
number_of_months
Integer
required=True
args: '# Months'
sequence
Integer
default=10
args: 'Sequence'
No public methods.
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
alias_user_id
Many2one → res.users
domain=<expr>
inherited=True
related='alias_id.alias_user_id'
args: 'res.users'
lead_all_assigned_month_count
Integer
compute='_compute_lead_all_assigned_month_count'
help='Number of leads and opportunities assigned this last month.'
string='# Leads/Opps assigned this month'
lead_unassigned_count
Integer
compute='_compute_lead_unassigned_count'
string='# Unassigned Leads'
opportunities_amount
Monetary
compute='_compute_opportunities_data'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities_data'
string='# Opportunities'
opportunities_overdue_amount
Monetary
compute='_compute_opportunities_overdue_data'
string='Overdue Opportunities Revenues'
opportunities_overdue_count
Integer
compute='_compute_opportunities_overdue_data'
string='# Overdue Opportunities'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_primary_channel_button(self)
action_your_pipeline(self)
write(self, vals)
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
No public methods.
No new fields.
Public methods (3)create(self, vals_list)
unlink(self)
write(self, vals)
crm_alias_prefix
Char
compute='_compute_crm_alias_prefix'
readonly=False
store=True
args: 'Default Alias Name for Leads'
generate_lead_from_alias
Boolean
compute='_compute_generate_lead_from_alias'
config_parameter='crm.generate_lead_from_alias'
readonly=False
store=True
args: 'Manual Assignment of Emails'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
group_use_recurring_revenues
Boolean
implied_group='crm.group_use_recurring_revenues'
string='Recurring Revenues'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='manual'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_lead
Boolean
module_crm_iap_lead_enrich
Boolean
module_crm_iap_lead_website
Boolean
module_mail_client_extension
Boolean
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
action_reset_lead_probabilities(self)
get_values(self)
set_values(self)
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
meeting_ids
Many2many → calendar.event
copy=False
string='Meetings'
args: 'calendar.event', 'calendar_event_res_partner_rel', 'res_partner_id', 'calendar_event_id'
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
string='Sales Team'
args: 'crm.team'
action_view_opportunity(self)
default_get(self, fields)
schedule_meeting(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_count
Integer
compute='_compute_crm_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Leads/Opportunities count'
use_leads
Boolean
compute='_compute_use_leads'
args: 'Use Leads'
action_redirect_to_leads_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
crm assets | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
CRM Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_tag_form |
crm.lead.tag.form | crm.lead.tag | form | New |
crm_lead_tag_tree |
crm.lead.tag.tree | crm.lead.tag | tree | New |
crm_lead_view_activity |
crm.lead.view.activity | crm.lead | activity | New |
crm_lead_view_form |
crm.lead.form | crm.lead | form | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_tree_activity |
crm.lead.tree.opportunity.next.activity | crm.lead | tree | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_lost_reason_view_tree |
crm.lost.reason.tree | crm.lost.reason | tree | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
utm_campaign_view_form |
utm.campaign.view.form | utm.campaign | xpath | Inherits utm.utm_campaign_view_form |
utm_campaign_view_kanban |
utm.campaign.view.kanban | utm.campaign | xpath | Inherits utm.utm_campaign_view_kanban |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Assigned To'
body
Html
readonly=True
args: 'Activity Description'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Completion Date'
date_closed
Datetime
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
lead_create_date
Datetime
readonly=True
args: 'Creation Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Opportunity'
lead_type
Selection
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
tracking=True
args: 'Active'
automated_probability
Float
readonly=True
args: 'Automated Probability'
city
Char
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one
readonly=True
related='company_id.currency_id'
relation='res.currency'
string='Currency'
company_id
Many2one → res.company
default=<expr>
index=True
string='Company'
args: 'res.company'
contact_name
Char
tracking=30
args: 'Contact Name'
country_id
Many2one → res.country
string='Country'
args: 'res.country'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
default=fields.Datetime.now
index=True
string='Last Stage Update'
date_open
Datetime
default=fields.Datetime.now
readonly=True
args: 'Assignation Date'
day_close
Float
compute='_compute_day_close'
store=True
string='Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
string='Days to Assign'
description
Text
email_from
Char
help='Email address of the contact'
index=True
tracking=40
args: 'Email'
email_state
Selection
compute='_compute_email_state'
store=True
string='Email Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
expected_revenue
Monetary
compute='_compute_expected_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
function
Char
is_automated_probability
Boolean
compute='_compute_is_automated_probability'
args: 'Is automated probability?'
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lang_id
Many2one → res.lang
help='Language of the lead.'
string='Language'
args: 'res.lang'
lost_reason
Many2one → crm.lost.reason
index=True
string='Lost Reason'
tracking=True
args: 'crm.lost.reason'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
mobile
Char
name
Char
index=True
required=True
args: 'Opportunity'
partner_address_email
Char
readonly=True
related='partner_id.email'
args: 'Partner Contact Email'
partner_address_name
Char
readonly=True
related='partner_id.name'
args: 'Partner Contact Name'
partner_address_phone
Char
readonly=True
related='partner_id.phone'
args: 'Partner Contact Phone'
partner_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
tracking=10
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
tracking=20
args: 'Company Name'
phone
Char
tracking=50
args: 'Phone'
phone_state
Selection
compute='_compute_phone_state'
store=True
string='Phone Quality'
args: [('correct', 'Correct'), ('incorrect', 'Incorrect')]
planned_revenue
Monetary
currency_field='company_currency'
tracking=True
args: 'Expected Revenue'
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
copy=False
group_operator='avg'
args: 'Probability'
referred
Char
stage_id
Many2one → crm.stage
copy=False
default=<expr>
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
string='Stage'
tracking=True
args: 'crm.stage'
state_id
Many2one → res.country.state
string='State'
args: 'res.country.state'
street
Char
street2
Char
tag_ids
Many2many → crm.lead.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.lead.tag', 'crm_lead_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
default=<expr>
help='When sending mails, the default email address is taken from the Sales Team.'
index=True
string='Sales Team'
tracking=True
args: 'crm.team'
title
Many2one → res.partner.title
type
Selection
default=<expr>
help='Type is used to separate Leads and Opportunities'
index=True
required=True
tracking=15
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
default=<expr>
index=True
string='Salesperson'
tracking=True
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
website
Char
help='Website of the contact'
index=True
args: 'Website'
zip
Char
change_default=True
args: 'Zip'
action_schedule_meeting(self)
action_set_automated_probability(self)
action_set_lost(self, **additional_values)
action_set_won(self)
action_set_won_rainbowman(self)
allocate_salesman(self, user_ids=None, team_id=False)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals)
get_duplicated_leads(self, partner_id, include_lost=False)
get_empty_list_help(self, help)
get_import_templates(self)
handle_partner_assignation(self, action='create', partner_id=False)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_dependences(self, opportunities)
merge_opportunity(self, user_id=False, team_id=False)
message_new(self, msg_dict, custom_values=None)
modify_target_sales_dashboard(self, target_name, target_value)
redirect_lead_opportunity_view(self)
retrieve_sales_dashboard(self)
toggle_active(self)
unlink(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
lost_count
Float
digits=(16, 1)
args: 'Lost Count'
team_id
Many2one → crm.team
value
Char
variable
Char
index=True
args: 'Variable'
won_count
Float
digits=(16, 1)
args: 'Won Count'
No public methods.
field_id
Many2one → ir.model.fields
domain=[('model_id.model', '=', 'crm.lead')]
required=True
args: 'ir.model.fields'
name
Char
related='field_id.field_description'
No public methods.
color
Integer
name
Char
required=True
translate=True
args: 'Tag Name'
No public methods.
name
Selection
required=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
opportunity_ids
Many2many → crm.lead
string='Opportunities'
args: 'crm.lead'
team_id
Many2one → crm.team
index=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
onchange_action(self)
view_init(self, fields)
action
Selection
required=True
selection_add=[('each_exist_or_create', 'Use existing partner or create'), ('nothing', 'Do not link to a customer')]
string='Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignation
Boolean
help='If unchecked, this will leave the salesman of duplicated opportunities'
args: 'Force assignation'
team_id
Many2one → crm.team
index=True
args: 'crm.team', 'Sales Team'
user_ids
Many2many → res.users
string='Salesmen'
args: 'res.users'
default_get(self, fields)
mass_convert(self)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Description'
No public methods.
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
index=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
action
Selection
required=True
args: [('create', 'Create a new customer'), ('exist', 'Link to an existing customer'), ('nothing', 'Do not link to a customer')], 'Related Customer'
partner_id
Many2one → res.partner
default_get(self, fields)
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
is_won
Boolean
name
Char
required=True
translate=True
args: 'Stage Name'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
alias_user_id
Many2one → res.users
domain=<expr>
inherited=True
related='alias_id.alias_user_id'
args: 'res.users'
opportunities_amount
Integer
compute='_compute_opportunities'
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities'
string='Number of open opportunities'
overdue_opportunities_amount
Integer
compute='_compute_overdue_opportunities'
string='Overdue Opportunities Revenues'
overdue_opportunities_count
Integer
compute='_compute_overdue_opportunities'
string='Number of overdue opportunities'
unassigned_leads_count
Integer
compute='_compute_unassigned_leads_count'
string='Unassigned Leads'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_primary_channel_button(self)
action_your_pipeline(self)
get_alias_model_name(self, vals)
get_alias_values(self)
write(self, vals)
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
compute_kpis_actions(self, company, user)
crm_alias_prefix
Char
generate_lead_from_alias
Boolean
config_parameter='crm.generate_lead_from_alias'
args: 'Manual Assignation of Emails'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
lead_enrich_auto
Selection
config_parameter='crm.iap.lead.enrich.setting'
default='manual'
string='Enrich lead automatically'
args: [('manual', 'Enrich leads on demand only'), ('auto', 'Enrich all leads automatically')]
lead_mining_in_pipeline
Boolean
config_parameter='crm.lead_mining_in_pipeline'
args: 'Create a lead mining request directly from the opportunity pipeline.'
module_crm_iap_lead
Boolean
module_crm_iap_lead_enrich
Boolean
module_crm_iap_lead_website
Boolean
predictive_lead_scoring_fields
Many2many → crm.lead.scoring.frequency.field
compute='_compute_pls_fields'
inverse='_inverse_pls_fields_str'
string='Lead Scoring Frequency Fields'
args: 'crm.lead.scoring.frequency.field'
predictive_lead_scoring_fields_str
Char
config_parameter='crm.pls_fields'
string='Lead Scoring Frequency Fields in String'
predictive_lead_scoring_start_date
Date
compute='_compute_pls_start_date'
inverse='_inverse_pls_start_date_str'
string='Lead Scoring Starting Date'
predictive_lead_scoring_start_date_str
Char
config_parameter='crm.pls_start_date'
string='Lead Scoring Starting Date in String'
get_values(self)
set_values(self)
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
meeting_ids
Many2many → calendar.event
copy=False
string='Meetings'
args: 'calendar.event', 'calendar_event_res_partner_rel', 'res_partner_id', 'calendar_event_id'
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_count_ids
Many2many → crm.lead
compute='_compute_opportunity_count'
help='Technical field used for stat button'
string='Opportunities Count'
args: 'crm.lead'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
string='Sales Team'
args: 'crm.team'
action_view_opportunity(self)
default_get(self, fields)
schedule_meeting(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
crm_lead_activated
Boolean
compute='_compute_crm_lead_activated'
args: 'Use Leads'
lead_count
Integer
compute='_compute_global_opportunity_and_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Lead Count'
opportunity_count
Integer
compute='_compute_global_opportunity_and_lead_count'
groups='sales_team.group_sale_salesman'
args: 'Opportunity Count'
action_redirect_to_leads(self)
action_redirect_to_opportunities(self)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
crm assets | ir.ui.view | qweb | Inherits web.assets_backend |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_form_view_leads |
crm.lead.form.lead | crm.lead | form | New |
crm_case_form_view_oppor |
crm.lead.form.opportunity | crm.lead | form | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_tag_form |
crm.lead.tag.form | crm.lead.tag | form | New |
crm_lead_tag_tree |
crm.lead.tag.tree | crm.lead.tag | tree | New |
crm_lead_view_graph |
crm.lead.view.graph | crm.lead | graph | New |
crm_lead_view_pivot |
crm.lead.view.pivot | crm.lead | pivot | New |
crm_lead_view_tree_activity |
crm.lead.tree.opportunity.next.activity | crm.lead | tree | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.lead | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.lead | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.lead | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.lead | pivot | New |
crm_opportunity_report_view_search |
crm.lead.search | crm.lead | search | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
digest_digest_view_form |
digest.digest.view.form.inherit.crm.lead | digest.digest | xpath | Inherits digest.digest_digest_view_form |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
quick_create_opportunity_form |
crm.lead.form.quick_create | crm.lead | form | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
view_create_opportunity_simplified |
crm.lead.form.simple | crm.lead | form | New |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Created By'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Lead'
lead_type
Char
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Partner/Customer'
probability
Float
group_operator='avg'
readonly=True
args: 'Probability'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subject
Char
readonly=True
args: 'Summary'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
track_visibility=True
args: 'Active'
city
Char
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one
readonly=True
related='company_id.currency_id'
relation='res.currency'
string='Currency'
company_id
Many2one → res.company
default=<expr>
index=True
string='Company'
args: 'res.company'
contact_name
Char
track_sequence=3
track_visibility='onchange'
args: 'Contact Name'
country_id
Many2one → res.country
string='Country'
args: 'res.country'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
default=fields.Datetime.now
index=True
string='Last Stage Update'
date_open
Datetime
default=fields.Datetime.now
readonly=True
args: 'Assignation Date'
day_close
Float
compute='_compute_day_close'
store=True
string='Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
string='Days to Assign'
description
Text
email_cc
Text
help='These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma'
args: 'Global CC'
email_from
Char
help='Email address of the contact'
index=True
track_sequence=4
track_visibility='onchange'
args: 'Email'
expected_revenue
Monetary
compute='_compute_expected_revenue'
currency_field='company_currency'
store=True
args: 'Prorated Revenue'
function
Char
kanban_state
Selection
compute='_compute_kanban_state'
string='Kanban State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lost_reason
Many2one → crm.lost.reason
index=True
string='Lost Reason'
track_visibility='onchange'
args: 'crm.lost.reason'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
message_bounce
Integer
default=0
help='Counter of the number of bounced emails for this contact'
args: 'Bounce'
mobile
Char
name
Char
index=True
required=True
args: 'Opportunity'
partner_address_email
Char
readonly=True
related='partner_id.email'
args: 'Partner Contact Email'
partner_address_mobile
Char
readonly=True
related='partner_id.mobile'
args: 'Partner Contact Mobile'
partner_address_name
Char
readonly=True
related='partner_id.name'
args: 'Partner Contact Name'
partner_address_phone
Char
readonly=True
related='partner_id.phone'
args: 'Partner Contact Phone'
partner_id
Many2one → res.partner
help='Linked partner (optional). Usually created when converting the lead. You can find a partner by its Name, TIN, Email or Internal Reference.'
index=True
string='Customer'
track_sequence=1
track_visibility='onchange'
args: 'res.partner'
partner_is_blacklisted
Boolean
readonly=True
related='partner_id.is_blacklisted'
args: 'Partner is blacklisted'
partner_name
Char
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
track_sequence=2
track_visibility='onchange'
args: 'Customer Name'
phone
Char
track_sequence=5
track_visibility='onchange'
args: 'Phone'
planned_revenue
Monetary
currency_field='company_currency'
track_visibility='always'
args: 'Expected Revenue'
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
copy=False
default=<expr>
group_operator='avg'
args: 'Probability'
referred
Char
stage_id
Many2one → crm.stage
copy=False
default=<expr>
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
ondelete='restrict'
string='Stage'
track_visibility='onchange'
args: 'crm.stage'
state_id
Many2one → res.country.state
string='State'
args: 'res.country.state'
street
Char
street2
Char
tag_ids
Many2many → crm.lead.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.lead.tag', 'crm_lead_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
default=<expr>
help='When sending mails, the default email address is taken from the Sales Team.'
index=True
oldname='section_id'
string='Sales Team'
track_visibility='onchange'
args: 'crm.team'
title
Many2one → res.partner.title
type
Selection
default=<expr>
help='Type is used to separate Leads and Opportunities'
index=True
required=True
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
default=<expr>
string='Salesperson'
track_visibility='onchange'
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
website
Char
help='Website of the contact'
index=True
args: 'Website'
zip
Char
change_default=True
args: 'Zip'
action_schedule_meeting(self)
action_set_lost(self)
action_set_won(self)
action_set_won_rainbowman(self)
allocate_salesman(self, user_ids=None, team_id=False)
close_dialog(self)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals)
edit_dialog(self)
get_duplicated_leads(self, partner_id, include_lost=False)
get_empty_list_help(self, help)
get_formview_id(self, access_uid=None)
get_import_templates(self)
handle_partner_assignation(self, action='create', partner_id=False)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_dependences(self, opportunities)
merge_opportunity(self, user_id=False, team_id=False)
message_get_default_recipients(self)
message_get_suggested_recipients(self)
message_new(self, msg_dict, custom_values=None)
message_partner_info_from_emails(self, emails, link_mail=False)
modify_target_sales_dashboard(self, target_name, target_value)
name_create(self, name)
redirect_lead_view(self)
redirect_opportunity_view(self)
retrieve_sales_dashboard(self)
toggle_active(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
color
Integer
name
Char
required=True
translate=True
args: 'Name'
No public methods.
name
Selection
required=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
opportunity_ids
Many2many → crm.lead
string='Opportunities'
args: 'crm.lead'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
onchange_action(self)
view_init(self, fields)
action
Selection
required=True
args: [('each_exist_or_create', 'Use existing partner or create'), ('nothing', 'Do not link to a customer')], 'Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignation
Boolean
help='If unchecked, this will leave the salesman of duplicated opportunities'
args: 'Force assignation'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_ids
Many2many → res.users
string='Salesmen'
args: 'res.users'
default_get(self, fields)
mass_convert(self)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Name'
No public methods.
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
action
Selection
required=True
args: [('exist', 'Link to an existing customer'), ('create', 'Create a new customer'), ('nothing', 'Do not link to a customer')], 'Related Customer'
partner_id
Many2one → res.partner
default_get(self, fields)
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
legend_priority
Text
help='Explanation text to help users using the star and priority mechanism on stages or issues that are in this stage.'
translate=True
args: 'Priority Management Explanation'
name
Char
required=True
translate=True
args: 'Stage Name'
on_change
Boolean
help='Setting this stage will change the probability automatically on the opportunity.'
args: 'Change Probability Automatically'
probability
Float
default=10.0
help='This percentage depicts the default/average probability of the Case for this stage to be a success'
required=True
args: 'Probability (%)'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_count
Integer
compute='_compute_team_count'
args: 'team_count'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
dashboard_graph_group_pipeline
Selection
default='day'
help="How this channel's dashboard graph will group the results."
string='Grouping Method'
args: [('day', 'Expected Closing Day'), ('week', 'Expected Closing Week'), ('month', 'Expected Closing Month'), ('user', 'Salesperson'), ('stage', 'Stage')]
dashboard_graph_model
Selection
selection_add=[('crm.lead', 'Pipeline')]
dashboard_graph_period_pipeline
Selection
compute='_compute_dashboard_graph_period_pipeline'
help="The time period this channel's dashboard graph will consider."
inverse='_inverse_dashboard_graph_period_pipeline'
string='Expected to Close'
args: [('week', 'Within a Week'), ('month', 'Within a Month'), ('year', 'Within a Year')]
opportunities_amount
Integer
compute='_compute_opportunities'
readonly=True
string='Opportunities Revenues'
opportunities_count
Integer
compute='_compute_opportunities'
readonly=True
string='Number of open opportunities'
unassigned_leads_count
Integer
compute='_compute_unassigned_leads_count'
readonly=True
string='Unassigned Leads'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_primary_channel_button(self)
action_your_pipeline(self)
get_alias_model_name(self, vals)
get_alias_values(self)
write(self, vals)
kpi_crm_lead_created
Boolean
kpi_crm_lead_created_value
Integer
compute='_compute_kpi_crm_lead_created_value'
kpi_crm_opportunities_won
Boolean
kpi_crm_opportunities_won_value
Integer
compute='_compute_kpi_crm_opportunities_won_value'
compute_kpis_actions(self, company, user)
crm_alias_prefix
Char
generate_lead_from_alias
Boolean
config_parameter='crm.generate_lead_from_alias'
args: 'Manual Assignation of Emails'
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
module_crm_phone_validation
Boolean
module_crm_reveal
Boolean
get_values(self)
set_values(self)
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
meeting_ids
Many2many → calendar.event
copy=False
string='Meetings'
args: 'calendar.event', 'calendar_event_res_partner_rel', 'res_partner_id', 'calendar_event_id'
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
oldname='section_id'
string='Sales Team'
args: 'crm.team'
default_get(self, fields)
schedule_meeting(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/11.0/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Fabien Pinckaers, Olivier Dony, Thibault Delavallée, Christophe Simonis, Xavier Morel, Goffin Simon, Nicolas Martinelli, Nicolas Lempereur, Jérome Maes, Richard Mathot, qdp-odoo, Géry Debongnie, Aaron Bohy, Jeremy Kersten, GitHub, Lucas Perais (lpe), Damien Bouvy, Olivier Colson, Yannick Tivisse, qsm-odoo, Martin Geubelle, Odoo Online, Denis Vermylen (dve), Toufik Benjaa, DVE, fwi-odoo, RomainLibert, len-odoo, Jorge Pinna Puissant, Denis Vermylen, Rémi Rahir, Andrea Grazioso (agr-odoo), Nasreddin (bon) |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/crm |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:53:42 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_setup - base - web - sales_team - bus - web_tour - calendar - resource - fetchmail - utm - web_planner - contacts |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
crm assets | ir.ui.view | qweb | Inherits web.assets_backend |
base_partner_merge_automatic_wizard_form |
base.partner.merge.automatic.wizard.form | base.partner.merge.automatic.wizard | form | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_form_view_leads |
crm.lead.form.lead | crm.lead | form | New |
crm_case_form_view_oppor |
crm.lead.form.opportunity | crm.lead | form | New |
crm_case_graph_view_leads |
crm.lead.graph.lead | crm.lead | graph | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_pivot_view_leads |
crm.lead.pivot.lead | crm.lead | pivot | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_tag_form |
crm.lead.tag.form | crm.lead.tag | form | New |
crm_lead_tag_tree |
crm.lead.tag.tree | crm.lead.tag | tree | New |
crm_lead_view_tree_activity |
crm.lead.tree.opportunity.next.activity | crm.lead | tree | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.opportunity.report | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.opportunity.report | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_search |
crm.opportunity.report.select | crm.opportunity.report | search | New |
crm_planner |
crm_planner | ir.ui.view | qweb | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.crm | res.config.settings | xpath | Inherits base.res_config_settings_view_form |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
view_create_opportunity_simplified |
crm.lead.form.simple | crm.lead | form | New |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead_kanban |
crm.lead.kanban | crm.lead | kanban | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
current_line_id
Many2one → base.partner.merge.line
string='Current Line'
args: 'base.partner.merge.line'
dst_partner_id
Many2one → res.partner
string='Destination Contact'
args: 'res.partner'
exclude_contact
Boolean
exclude_journal_item
Boolean
group_by_email
Boolean
group_by_is_company
Boolean
group_by_name
Boolean
group_by_parent_id
Boolean
group_by_vat
Boolean
line_ids
One2many → base.partner.merge.line
string='Lines'
args: 'base.partner.merge.line', 'wizard_id'
maximum_group
Integer
number_group
Integer
readonly=True
args: 'Group of Contacts'
partner_ids
Many2many → res.partner
string='Contacts'
args: 'res.partner'
state
Selection
default='option'
readonly=True
required=True
string='State'
args: [('option', 'Option'), ('selection', 'Selection'), ('finished', 'Finished')]
action_merge(self)
action_skip(self)
action_start_automatic_process(self)
action_start_manual_process(self)
action_update_all_process(self)
default_get(self, fields)
parent_migration_process_cb(self)
aggr_ids
Char
required=True
args: 'Ids'
min_id
Integer
wizard_id
Many2one → base.partner.merge.automatic.wizard
No public methods.
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
args: 'crm.lead', 'Opportunity'
create(self, vals)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Created By'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Lead'
lead_type
Char
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
mail_activity_type_id
Many2one → mail.activity.type
readonly=True
args: 'mail.activity.type', 'Activity Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Partner/Customer'
probability
Float
group_operator='avg'
readonly=True
args: 'Probability'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subject
Char
readonly=True
args: 'Summary'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Subtype'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Channel'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
args: 'Active'
city
Char
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one
readonly=True
related='company_id.currency_id'
relation='res.currency'
string='Currency'
company_id
Many2one → res.company
default=<expr>
index=True
string='Company'
args: 'res.company'
contact_name
Char
country_id
Many2one → res.country
string='Country'
args: 'res.country'
create_date
Datetime
readonly=True
args: 'Create Date'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
default=fields.Datetime.now
index=True
string='Last Stage Update'
date_open
Datetime
default=fields.Datetime.now
readonly=True
args: 'Assigned'
day_close
Float
compute='_compute_day_close'
store=True
string='Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
string='Days to Assign'
description
Text
email_cc
Text
help='These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma'
args: 'Global CC'
email_from
Char
help='Email address of the contact'
index=True
args: 'Email'
function
Char
kanban_state
Selection
compute='_compute_kanban_state'
string='Activity State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lost_reason
Many2one → crm.lost.reason
index=True
string='Lost Reason'
track_visibility='onchange'
args: 'crm.lost.reason'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
message_bounce
Integer
default=0
help='Counter of the number of bounced emails for this contact'
args: 'Bounce'
mobile
Char
name
Char
index=True
required=True
args: 'Opportunity'
opt_out
Boolean
help="If opt-out is checked, this contact has refused to receive emails for mass mailing and marketing campaign. Filter 'Available for Mass Mailing' allows users to filter the leads when performing mass mailing."
oldname='optout'
string='Opt-Out'
partner_address_email
Char
readonly=True
related='partner_id.email'
args: 'Partner Contact Email'
partner_address_name
Char
readonly=True
related='partner_id.name'
args: 'Partner Contact Name'
partner_id
Many2one → res.partner
help='Linked partner (optional). Usually created when converting the lead.'
index=True
string='Customer'
track_visibility='onchange'
args: 'res.partner'
partner_name
Char
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
args: 'Customer Name'
phone
Char
planned_revenue
Float
track_visibility='always'
args: 'Expected Revenue'
priority
Selection
default=<expr>
index=True
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
default=<expr>
group_operator='avg'
args: 'Probability'
referred
Char
stage_id
Many2one → crm.stage
default=<expr>
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
string='Stage'
track_visibility='onchange'
args: 'crm.stage'
state_id
Many2one → res.country.state
string='State'
args: 'res.country.state'
street
Char
street2
Char
tag_ids
Many2many → crm.lead.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.lead.tag', 'crm_lead_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
default=<expr>
help='When sending mails, the default email address is taken from the sales channel.'
index=True
oldname='section_id'
string='Sales Channel'
track_visibility='onchange'
args: 'crm.team'
title
Many2one → res.partner.title
type
Selection
default=<expr>
help='Type is used to separate Leads and Opportunities'
index=True
required=True
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
default=<expr>
index=True
string='Salesperson'
track_visibility='onchange'
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
website
Char
help='Website of the contact'
index=True
args: 'Website'
write_date
Datetime
readonly=True
args: 'Update Date'
zip
Char
change_default=True
args: 'Zip'
action_schedule_meeting(self)
action_set_active(self)
action_set_lost(self)
action_set_unactive(self)
action_set_won(self)
action_set_won_rainbowman(self)
allocate_salesman(self, user_ids=None, team_id=False)
close_dialog(self)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals)
edit_dialog(self)
get_duplicated_leads(self, partner_id, include_lost=False)
get_empty_list_help(self, help)
get_formview_id(self, access_uid=None)
handle_partner_assignation(self, action='create', partner_id=False)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_dependences(self, opportunities)
merge_opportunity(self, user_id=False, team_id=False)
message_get_default_recipients(self)
message_get_reply_to(self, res_ids, default=None)
message_get_suggested_recipients(self)
message_new(self, msg_dict, custom_values=None)
message_partner_info_from_emails(self, emails, link_mail=False)
message_update(self, msg_dict, update_vals=None)
modify_target_sales_dashboard(self, target_name, target_value)
name_create(self, name)
redirect_lead_view(self)
redirect_opportunity_view(self)
retrieve_sales_dashboard(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
color
Integer
default=10
args: 'Color Index'
name
Char
required=True
translate=True
args: 'Name'
No public methods.
name
Selection
required=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
opportunity_ids
Many2many → crm.lead
string='Opportunities'
args: 'crm.lead'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Channel'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
onchange_action(self)
view_init(self, fields)
action
Selection
required=True
args: [('each_exist_or_create', 'Use existing partner or create'), ('nothing', 'Do not link to a customer')], 'Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignation
Boolean
help='If unchecked, this will leave the salesman of duplicated opportunities'
args: 'Force assignation'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Channel'
user_ids
Many2many → res.users
string='Salesmen'
args: 'res.users'
default_get(self, fields)
mass_convert(self)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Name'
No public methods.
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Channel'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
campaign_id
Many2one → utm.campaign
readonly=True
string='Campaign'
args: 'utm.campaign'
city
Char
company_id
Many2one → res.company
readonly=True
string='Company'
args: 'res.company'
country_id
Many2one → res.country
readonly=True
string='Country'
args: 'res.country'
create_date
Datetime
readonly=True
args: 'Creation Date'
date_closed
Datetime
readonly=True
args: 'Close Date'
date_conversion
Datetime
readonly=True
string='Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
date_last_stage_update
Datetime
readonly=True
args: 'Last Stage Update'
delay_close
Float
digits=(16, 2)
group_operator='avg'
help='Number of Days to close the case'
readonly=True
args: 'Delay to Close'
delay_expected
Float
digits=(16, 2)
group_operator='avg'
readonly=True
args: 'Overpassed Deadline'
delay_open
Float
digits=(16, 2)
group_operator='avg'
help='Number of Days to open the case'
readonly=True
args: 'Delay to Assign'
expected_revenue
Float
digits=(16, 2)
readonly=True
string='Probable Turnover'
lost_reason
Many2one → crm.lost.reason
readonly=True
string='Lost Reason'
args: 'crm.lost.reason'
medium_id
Many2one → utm.medium
readonly=True
string='Medium'
args: 'utm.medium'
nbr_activities
Integer
readonly=True
args: '# of Activities'
opening_date
Datetime
readonly=True
args: 'Assignation Date'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
priority
Selection
group_operator='avg'
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
digits=(16, 2)
group_operator='avg'
readonly=True
string='Probability'
source_id
Many2one → utm.source
readonly=True
string='Source'
args: 'utm.source'
stage_id
Many2one → crm.stage
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
readonly=True
string='Stage'
args: 'crm.stage'
stage_name
Char
readonly=True
string='Stage Name'
team_id
Many2one → crm.team
oldname='section_id'
readonly=True
args: 'crm.team', 'Sales Channel'
total_revenue
Float
digits=(16, 2)
readonly=True
string='Total Revenue'
type
Selection
help='Type is used to separate Leads and Opportunities'
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_id
Many2one → res.users
readonly=True
string='User'
args: 'res.users'
init(self)
action
Selection
required=True
args: [('exist', 'Link to an existing customer'), ('create', 'Create a new customer'), ('nothing', 'Do not link to a customer')], 'Related Customer'
partner_id
Many2one → res.partner
default_get(self, fields)
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
legend_priority
Text
help='Explanation text to help users using the star and priority mechanism on stages or issues that are in this stage.'
translate=True
args: 'Priority Management Explanation'
name
Char
required=True
translate=True
args: 'Stage Name'
on_change
Boolean
help='Setting this stage will change the probability automatically on the opportunity.'
args: 'Change Probability Automatically'
probability
Float
default=10.0
help='This percentage depicts the default/average probability of the Case for this stage to be a success'
required=True
args: 'Probability (%)'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
dashboard_graph_group_pipeline
Selection
default='day'
help="How this channel's dashboard graph will group the results."
string='Group by'
args: [('day', 'Expected Closing Day'), ('week', 'Expected Closing Week'), ('month', 'Expected Closing Month'), ('user', 'Salesperson'), ('stage', 'Stage')]
dashboard_graph_model
Selection
selection_add=[('crm.opportunity.report', 'Pipeline')]
dashboard_graph_period_pipeline
Selection
compute='_compute_dashboard_graph_period_pipeline'
help="The time period this channel's dashboard graph will consider."
inverse='_inverse_dashboard_graph_period_pipeline'
string='Expected to Close'
args: [('week', 'Within a Week'), ('month', 'Within a Month'), ('year', 'Within a Year')]
opportunities_amount
Integer
compute='_compute_opportunities'
readonly=True
string='Amount of quotations to invoice'
opportunities_count
Integer
compute='_compute_opportunities'
readonly=True
string='Number of open opportunities'
unassigned_leads_count
Integer
compute='_compute_unassigned_leads_count'
readonly=True
string='Unassigned Leads'
use_leads
Boolean
help='Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.'
args: 'Leads'
use_opportunities
Boolean
help='Check this box to manage a presales process with opportunities.'
args: 'Pipeline'
action_primary_channel_button(self)
action_your_pipeline(self)
get_alias_model_name(self, vals)
get_alias_values(self)
write(self, vals)
crm_alias_prefix
Char
generate_lead_from_alias
Boolean
group_use_lead
Boolean
implied_group='crm.group_use_lead'
string='Leads'
module_crm_phone_validation
Boolean
module_web_clearbit
Boolean
get_values(self)
set_values(self)
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
meeting_ids
Many2many → calendar.event
copy=False
string='Meetings'
args: 'calendar.event', 'calendar_event_res_partner_rel', 'res_partner_id', 'calendar_event_id'
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
oldname='section_id'
string='Sales Channel'
args: 'crm.team'
schedule_meeting(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/10.0/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Fabien Pinckaers, Olivier Dony, Thibault Delavallée, Denis Ledoux, Fabien Meghazi, Christophe Simonis, David Monjoie, Xavier Morel, Goffin Simon, Simon Lejeune, Nicolas Martinelli, Nicolas Lempereur, Jérome Maes, Julien Legros, qdp-odoo, Aaron Bohy, Jeremy Kersten, GitHub, Lucas Perais (lpe), Damien Bouvy, Yannick Tivisse, qsm-odoo, len-odoo, fda-odoo |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/crm |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:50:47 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_action_rule - base - resource - base_setup - web_kanban - web - bus - web_tour - sales_team - calendar - web_calendar - fetchmail - utm - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | The generic Odoo Customer Relationship Management ==================================================== This application enables a group of people to intelligently and efficiently manage leads, opportunities, meetings and activities. It manages key tasks such as communication, identification, prioritization, assignment, resolution and notification. Odoo ensures that all cases are successfully tracked by users, customers and vendors. It can automatically send reminders, trigger specific methods and many other actions based on your own enterprise rules. The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and Odoo. That way, users can just send emails to the request tracker. Odoo will take care of thanking them for their message, automatically routing it to the appropriate staff and make sure all future correspondence gets to the right place. Dashboard for CRM will include: ------------------------------- * Planned Revenue by Stage and User (graph) * Opportunities by Stage (graph) |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
crm assets | ir.ui.view | qweb | Inherits web.assets_backend |
base_partner_merge_automatic_wizard_form |
base.partner.merge.automatic.wizard.form | base.partner.merge.automatic.wizard | form | New |
crm_activity_log_view_form |
Log an Activity | crm.activity.log | form | New |
crm_activity_log_view_form_schedule |
Schedule next Activity | crm.activity.log | form | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_report_view_tree |
crm.activity.report.tree | crm.activity.report | tree | New |
crm_activity_view_form |
crm.activity.form | crm.activity | form | New |
crm_activity_view_search |
crm.activity.search | crm.activity | search | New |
crm_activity_view_tree |
crm.activity.tree | crm.activity | tree | New |
crm_case_calendar_view_leads |
crm.lead.calendar.lead | crm.lead | calendar | New |
crm_case_form_view_leads |
crm.lead.form.lead | crm.lead | form | New |
crm_case_form_view_oppor |
crm.lead.form.opportunity | crm.lead | form | New |
crm_case_graph_view_leads |
crm.lead.graph.lead | crm.lead | graph | New |
crm_case_kanban_view_leads |
crm.lead.kanban.lead | crm.lead | kanban | New |
crm_case_pivot_view_leads |
crm.lead.pivot.lead | crm.lead | pivot | New |
crm_case_tree_view_leads |
crm.lead.tree.lead | crm.lead | tree | New |
crm_case_tree_view_oppor |
crm.lead.tree.opportunity | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_tag_form |
crm.lead.tag.form | crm.lead.tag | form | New |
crm_lead_tag_tree |
crm.lead.tag.tree | crm.lead.tag | tree | New |
crm_lead_view_tree_activity |
crm.lead.tree.opportunity.next.activity | crm.lead | tree | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.opportunity.report | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.opportunity.report | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_search |
crm.opportunity.report.select | crm.opportunity.report | search | New |
crm_planner |
crm_planner | ir.ui.view | qweb | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
sales_team_form_view_in_crm |
crm.team.form.inherit | crm.team | xpath | Inherits sales_team.crm_team_view_form |
view_create_opportunity_simplified |
crm.lead.form.simple | crm.lead | form | New |
view_crm_case_leads_filter |
crm.lead.search.lead | crm.lead | search | New |
view_crm_case_opportunities_filter |
crm.lead.search.opportunity | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_meeting_search |
calendar.event.form.inherit | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
view_sale_config_settings |
crm settings | sale.config.settings | div | Inherits sales_team.view_sale_config_settings |
current_line_id
Many2one → base.partner.merge.line
string='Current Line'
args: 'base.partner.merge.line'
dst_partner_id
Many2one → res.partner
string='Destination Contact'
args: 'res.partner'
exclude_contact
Boolean
exclude_journal_item
Boolean
group_by_email
Boolean
group_by_is_company
Boolean
group_by_name
Boolean
group_by_parent_id
Boolean
group_by_vat
Boolean
line_ids
One2many → base.partner.merge.line
string='Lines'
args: 'base.partner.merge.line', 'wizard_id'
maximum_group
Integer
number_group
Integer
readonly=True
args: 'Group of Contacts'
partner_ids
Many2many → res.partner
string='Contacts'
args: 'res.partner'
state
Selection
default='option'
readonly=True
required=True
string='State'
args: [('option', 'Option'), ('selection', 'Selection'), ('finished', 'Finished')]
action_merge(self)
action_skip(self)
action_start_automatic_process(self)
action_start_manual_process(self)
action_update_all_process(self)
default_get(self, fields)
parent_migration_process_cb(self)
aggr_ids
Char
required=True
args: 'Ids'
min_id
Integer
wizard_id
Many2one → base.partner.merge.automatic.wizard
No public methods.
opportunity_id
Many2one → crm.lead
domain="[('type', '=', 'opportunity')]"
args: 'crm.lead', 'Opportunity'
create(self, vals)
days
Integer
default=0
help='Number of days before executing the action, allowing you to plan the date of the action.'
args: 'Number of days'
default
Boolean
default=False
inherited=True
related='subtype_id.default'
args: 'Default'
internal
Boolean
default=True
inherited=True
related='subtype_id.internal'
args: 'Internal Only'
preceding_activity_ids
Many2many → crm.activity
string='Preceding Activities'
args: 'crm.activity', 'crm_activity_rel', 'recommended_id', 'activity_id'
recommended_activity_ids
Many2many → crm.activity
string='Recommended Next Activities'
args: 'crm.activity', 'crm_activity_rel', 'activity_id', 'recommended_id'
res_model
Char
default='crm.lead'
inherited=True
related='subtype_id.res_model'
args: 'Model'
sequence
Integer
default=0
args: 'Sequence'
subtype_id
Many2one → mail.message.subtype
ondelete='cascade'
required=True
string='Message Subtype'
args: 'mail.message.subtype'
team_id
Many2one → crm.team
string='Sales Team'
args: 'crm.team'
unlink(self)
date_action
Date
date_deadline
Date
last_activity_id
Many2one → crm.activity
default=False
args: 'crm.activity', 'Previous Activity'
lead_id
Many2one → crm.lead
default=_default_lead_id
required=True
args: 'crm.lead', 'Lead'
next_activity_id
Many2one → crm.activity
note
Html
planned_revenue
Float
recommended_activity_id
Many2one → crm.activity
team_id
Many2one → crm.team
title_action
Char
action_log(self)
action_log_and_schedule(self)
action_schedule(self)
onchange_lead_id(self)
onchange_next_activity_id(self)
onchange_recommended_activity_id(self)
active
Boolean
readonly=True
args: 'Active'
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Created By'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Date'
lead_id
Many2one → crm.lead
readonly=True
args: 'crm.lead', 'Lead'
lead_type
Char
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Partner/Customer'
probability
Float
group_operator='avg'
readonly=True
args: 'Probability'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subject
Char
readonly=True
args: 'Summary'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Activity'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Salesperson'
init(self)
active
Boolean
default=True
args: 'Active'
city
Char
color
Integer
default=0
args: 'Color Index'
company_currency
Many2one
readonly=True
related='company_id.currency_id'
relation='res.currency'
string='Currency'
company_id
Many2one → res.company
default=<expr>
index=True
string='Company'
args: 'res.company'
contact_name
Char
country_id
Many2one → res.country
string='Country'
args: 'res.country'
create_date
Datetime
readonly=True
args: 'Create Date'
date_action
Date
index=True
args: 'Next Activity Date'
date_action_last
Datetime
readonly=True
args: 'Last Action'
date_action_next
Datetime
readonly=True
args: 'Next Action'
date_closed
Datetime
copy=False
readonly=True
args: 'Closed Date'
date_conversion
Datetime
readonly=True
args: 'Conversion Date'
date_deadline
Date
help='Estimate of the date on which the opportunity will be won.'
args: 'Expected Closing'
date_last_stage_update
Datetime
default=fields.Datetime.now
index=True
string='Last Stage Update'
date_open
Datetime
default=<expr>
readonly=True
args: 'Assigned'
day_close
Float
compute='_compute_day_close'
store=True
string='Days to Close'
day_open
Float
compute='_compute_day_open'
store=True
string='Days to Assign'
description
Text
email_cc
Text
help='These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma'
args: 'Global CC'
email_from
Char
help='Email address of the contact'
index=True
args: 'Email'
fax
Char
function
Char
kanban_state
Selection
compute='_compute_kanban_state'
string='Activity State'
args: [('grey', 'No next activity planned'), ('red', 'Next activity late'), ('green', 'Next activity is planned')]
lost_reason
Many2one → crm.lost.reason
index=True
string='Lost Reason'
track_visibility='onchange'
args: 'crm.lost.reason'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
message_bounce
Integer
help='Counter of the number of bounced emails for this contact'
args: 'Bounce'
mobile
Char
name
Char
index=True
required=True
args: 'Opportunity'
next_activity_id
Many2one → crm.activity
index=True
string='Next Activity'
args: 'crm.activity'
opt_out
Boolean
help="If opt-out is checked, this contact has refused to receive emails for mass mailing and marketing campaign. Filter 'Available for Mass Mailing' allows users to filter the leads when performing mass mailing."
oldname='optout'
string='Opt-Out'
partner_address_email
Char
readonly=True
related='partner_id.email'
args: 'Partner Contact Email'
partner_address_name
Char
readonly=True
related='partner_id.name'
args: 'Partner Contact Name'
partner_id
Many2one → res.partner
help='Linked partner (optional). Usually created when converting the lead.'
index=True
string='Customer'
track_visibility='onchange'
args: 'res.partner'
partner_name
Char
help='The name of the future partner company that will be created while converting the lead into opportunity'
index=True
args: 'Customer Name'
phone
Char
planned_revenue
Float
track_visibility='always'
args: 'Expected Revenue'
priority
Selection
default=<expr>
index=True
string='Rating'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
default=<expr>
group_operator='avg'
args: 'Probability'
referred
Char
stage_id
Many2one → crm.stage
default=<expr>
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
group_expand='_read_group_stage_ids'
index=True
string='Stage'
track_visibility='onchange'
args: 'crm.stage'
state_id
Many2one → res.country.state
string='State'
args: 'res.country.state'
street
Char
street2
Char
tag_ids
Many2many → crm.lead.tag
help='Classify and analyze your lead/opportunity categories like: Training, Service'
string='Tags'
args: 'crm.lead.tag', 'crm_lead_tag_rel', 'lead_id', 'tag_id'
team_id
Many2one → crm.team
default=<expr>
help='When sending mails, the default email address is taken from the sales team.'
index=True
oldname='section_id'
string='Sales Team'
track_visibility='onchange'
args: 'crm.team'
title
Many2one → res.partner.title
title_action
Char
type
Selection
default=<expr>
help='Type is used to separate Leads and Opportunities'
index=True
required=True
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_email
Char
readonly=True
related='user_id.email'
args: 'User Email'
user_id
Many2one → res.users
default=<expr>
index=True
string='Salesperson'
track_visibility='onchange'
args: 'res.users'
user_login
Char
readonly=True
related='user_id.login'
args: 'User Login'
write_date
Datetime
readonly=True
args: 'Update Date'
zip
Char
change_default=True
args: 'Zip'
action_schedule_meeting(self)
action_set_active(self)
action_set_lost(self)
action_set_unactive(self)
action_set_won(self)
allocate_salesman(self, user_ids=None, team_id=False)
close_dialog(self)
convert_opportunity(self, partner_id, user_ids=False, team_id=False)
copy(self, default=None)
create(self, vals)
fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
get_duplicated_leads(self, partner_id, include_lost=False)
get_empty_list_help(self, help)
get_formview_id(self)
handle_partner_assignation(self, action='create', partner_id=False)
log_meeting(self, meeting_subject, meeting_date, duration)
merge_dependences(self, opportunities)
merge_opportunity(self, user_id=False, team_id=False)
message_get_reply_to(self, res_ids, default=None)
message_get_suggested_recipients(self)
message_new(self, msg_dict, custom_values=None)
message_partner_info_from_emails(self, emails, link_mail=False)
message_update(self, msg_dict, update_vals=None)
modify_target_sales_dashboard(self, target_name, target_value)
name_create(self, name)
redirect_lead_view(self)
redirect_opportunity_view(self)
retrieve_sales_dashboard(self)
write(self, vals)
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
color
Integer
name
Char
required=True
translate=True
args: 'Name'
No public methods.
name
Selection
required=True
args: [('convert', 'Convert to opportunity'), ('merge', 'Merge with existing opportunities')], 'Conversion Action'
opportunity_ids
Many2many → crm.lead
string='Opportunities'
args: 'crm.lead'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_apply(self)
default_get(self, fields)
onchange_action(self)
view_init(self, fields)
action
Selection
required=True
args: [('each_exist_or_create', 'Use existing partner or create'), ('nothing', 'Do not link to a customer')], 'Related Customer'
deduplicate
Boolean
default=True
help='Merge with existing leads/opportunities of each partner'
args: 'Apply deduplication'
force_assignation
Boolean
help='If unchecked, this will leave the salesman of duplicated opportunities'
args: 'Force assignation'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_ids
Many2many → res.users
string='Salesmen'
args: 'res.users'
default_get(self, fields)
mass_convert(self)
active
Boolean
default=True
args: 'Active'
name
Char
required=True
translate=True
args: 'Name'
No public methods.
opportunity_ids
Many2many → crm.lead
string='Leads/Opportunities'
args: 'crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id'
team_id
Many2one → crm.team
index=True
oldname='section_id'
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
index=True
args: 'res.users', 'Salesperson'
action_merge(self)
default_get(self, fields)
active
Boolean
readonly=True
args: 'Active'
campaign_id
Many2one → utm.campaign
readonly=True
string='Campaign'
args: 'utm.campaign'
city
Char
company_id
Many2one → res.company
readonly=True
string='Company'
args: 'res.company'
country_id
Many2one → res.country
readonly=True
string='Country'
args: 'res.country'
create_date
Datetime
readonly=True
args: 'Creation Date'
date_closed
Datetime
readonly=True
args: 'Close Date'
date_conversion
Datetime
readonly=True
string='Conversion Date'
date_deadline
Date
readonly=True
args: 'Expected Closing'
date_last_stage_update
Datetime
readonly=True
args: 'Last Stage Update'
delay_close
Float
digits=(16, 2)
group_operator='avg'
help='Number of Days to close the case'
readonly=True
args: 'Delay to Close'
delay_expected
Float
digits=(16, 2)
group_operator='avg'
readonly=True
args: 'Overpassed Deadline'
delay_open
Float
digits=(16, 2)
group_operator='avg'
help='Number of Days to open the case'
readonly=True
args: 'Delay to Assign'
expected_revenue
Float
digits=(16, 2)
readonly=True
string='Probable Turnover'
lost_reason
Many2one → crm.lost.reason
readonly=True
string='Lost Reason'
args: 'crm.lost.reason'
medium_id
Many2one → utm.medium
readonly=True
string='Medium'
args: 'utm.medium'
nbr_activities
Integer
readonly=True
args: '# of Activities'
opening_date
Datetime
readonly=True
args: 'Assignation Date'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
priority
Selection
group_operator='avg'
string='Priority'
args: crm_stage.AVAILABLE_PRIORITIES
probability
Float
digits=(16, 2)
group_operator='avg'
readonly=True
string='Probability'
source_id
Many2one → utm.source
readonly=True
string='Source'
args: 'utm.source'
stage_id
Many2one → crm.stage
domain="['|', ('team_id', '=', False), ('team_id', '=', team_id)]"
readonly=True
string='Stage'
args: 'crm.stage'
stage_name
Char
readonly=True
string='Stage Name'
team_id
Many2one → crm.team
oldname='section_id'
readonly=True
args: 'crm.team', 'Sales Team'
total_revenue
Float
digits=(16, 2)
readonly=True
string='Total Revenue'
type
Selection
help='Type is used to separate Leads and Opportunities'
args: [('lead', 'Lead'), ('opportunity', 'Opportunity')]
user_id
Many2one → res.users
readonly=True
string='User'
args: 'res.users'
init(self)
action
Selection
required=True
args: [('exist', 'Link to an existing customer'), ('create', 'Create a new customer'), ('nothing', 'Do not link to a customer')], 'Related Customer'
partner_id
Many2one → res.partner
default_get(self, fields)
fold
Boolean
help='This stage is folded in the kanban view when there are no records in that stage to display.'
args: 'Folded in Pipeline'
legend_priority
Text
help='Explanation text to help users using the star and priority mechanism on stages or issues that are in this stage.'
translate=True
args: 'Priority Management Explanation'
name
Char
required=True
translate=True
args: 'Stage Name'
on_change
Boolean
help='Setting this stage will change the probability automatically on the opportunity.'
args: 'Change Probability Automatically'
probability
Float
default=10.0
help='This percentage depicts the default/average probability of the Case for this stage to be a success'
required=True
args: 'Probability (%)'
requirements
Text
help="Enter here the internal requirements for this stage (ex: Offer sent to customer). It will appear as a tooltip over the stage's name."
args: 'Requirements'
sequence
Integer
default=1
help='Used to order stages. Lower is better.'
args: 'Sequence'
team_id
Many2one → crm.team
help='Specific team that uses this stage. Other teams will not be able to see or use this stage.'
ondelete='set null'
string='Team'
args: 'crm.team'
default_get(self, fields)
alias_id
Many2one → mail.alias
help='The email address associated with this team. New emails received will automatically create new leads assigned to the team.'
ondelete='restrict'
required=True
string='Alias'
args: 'mail.alias'
resource_calendar_id
Many2one → resource.calendar
help='Used to compute open days'
string='Working Time'
args: 'resource.calendar'
use_leads
Boolean
help='The first contact you get with a potential customer is a lead you qualify before converting it into a real business opportunity. Check this box to manage leads in this sales team.'
args: 'Leads'
use_opportunities
Boolean
default=True
help='Check this box to manage opportunities in this sales team.'
args: 'Opportunities'
action_your_pipeline(self)
create(self, vals)
get_alias_model_name(self, vals)
get_alias_values(self)
write(self, vals)
activities_count
Integer
compute='_compute_activities_count'
args: 'Activities'
meeting_count
Integer
compute='_compute_meeting_count'
args: '# Meetings'
meeting_ids
Many2many → calendar.event
copy=False
string='Meetings'
args: 'calendar.event', 'calendar_event_res_partner_rel', 'res_partner_id', 'calendar_event_id'
opportunity_count
Integer
compute='_compute_opportunity_count'
args: 'Opportunity'
opportunity_ids
One2many → crm.lead
domain=[('type', '=', 'opportunity')]
string='Opportunities'
args: 'crm.lead', 'partner_id'
team_id
Many2one → crm.team
oldname='section_id'
string='Sales Team'
args: 'crm.team'
schedule_meeting(self)
target_sales_done
Integer
target_sales_won
Integer
No public methods.
alias_domain
Char
default=<expr>
args: 'Alias Domain'
alias_prefix
Char
generate_sales_team_alias
Boolean
help='Odoo will generate an email alias based on the sales team name'
args: 'Automatically generate an email alias at the sales team creation'
group_use_lead
Selection
implied_group='crm.group_use_lead'
string='Leads'
args: [(0, 'Each mail sent to the alias creates a new opportunity'), (1, 'Use leads if you need a qualification step before creating an opportunity or a customer')]
module_crm_voip
Boolean
help='Integration with Asterisk'
args: 'VoIP integration'
module_website_sign
Boolean
get_default_alias_prefix(self, fields)
get_default_generate_sales_team_alias(self, fields)
set_default_alias_prefix(self)
set_default_generate_sales_team_alias(self)
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/9.0/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Fabien Pinckaers, Antony Lesuisse, Olivier Dony, Thibault Delavallée, Denis Ledoux, Christophe Simonis, David Monjoie, Xavier Morel, Goffin Simon, Simon Lejeune, Nicolas Martinelli, Nicolas Lempereur, Jérome Maes, Julien Legros, xmo-odoo, Richard Mathot, qdp-odoo, Géry Debongnie, Aaron Bohy, Jeremy Kersten, Lucas Perais (lpe), Damien Bouvy, Julien De Coster, Yannick Tivisse, qsm-odoo, Martin Geubelle, Toufik Benjaa, Ray Carnes, yti |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/crm |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:48:30 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_action_rule - base - resource - base_setup - web_kanban - web - bus - sales_team - calendar - web_calendar - fetchmail - utm - marketing - web_tip - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | The generic OpenERP Customer Relationship Management ==================================================== This application enables a group of people to intelligently and efficiently manage leads, opportunities, meetings and activities. It manages key tasks such as communication, identification, prioritization, assignment, resolution and notification. OpenERP ensures that all cases are successfully tracked by users, customers and vendors. It can automatically send reminders, trigger specific methods and many other actions based on your own enterprise rules. The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and OpenERP. That way, users can just send emails to the request tracker. OpenERP will take care of thanking them for their message, automatically routing it to the appropriate staff and make sure all future correspondence gets to the right place. Dashboard for CRM will include: ------------------------------- * Planned Revenue by Stage and User (graph) * Opportunities by Stage (graph) |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
crm assets | ir.ui.view | qweb | Inherits web.assets_backend |
base_partner_merge_automatic_wizard_form |
base.partner.merge.automatic.wizard.form | base.partner.merge.automatic.wizard | form | New |
crm_activity_report_view_graph |
crm.activity.report.graph | crm.activity.report | graph | New |
crm_activity_report_view_pivot |
crm.activity.report.pivot | crm.activity.report | pivot | New |
crm_activity_report_view_search |
crm.activity.report.search | crm.activity.report | search | New |
crm_activity_view_form |
crm.activity.view.form | crm.activity | form | New |
crm_activity_view_search |
crm.activity.view.search | crm.activity | search | New |
crm_activity_view_tree |
crm.activity.view.tree | crm.activity | tree | New |
crm_case_calendar_view_leads |
CRM - Leads Calendar | crm.lead | calendar | New |
crm_case_form_view_leads |
CRM - Leads Form | crm.lead | form | New |
crm_case_form_view_oppor |
Opportunities | crm.lead | form | New |
crm_case_graph_view_leads |
Opportunities | crm.lead | graph | New |
crm_case_kanban_view_leads |
CRM - Leads Kanban | crm.lead | kanban | New |
crm_case_pivot_view_leads |
Opportunities | crm.lead | pivot | New |
crm_case_tree_view_leads |
Leads | crm.lead | tree | New |
crm_case_tree_view_oppor |
Opportunities Tree | crm.lead | tree | New |
crm_lead_lost_view_form |
crm.lead.lost.form | crm.lead.lost | form | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.stage | search | New |
crm_lead_tag_form |
crm.lead.tag.form | crm.lead.tag | form | New |
crm_lead_tag_tree |
crm.lead.tag.tree | crm.lead.tag | tree | New |
crm_lead_view_tree_activity |
crm.lead.next.activity.tree | crm.lead | tree | New |
crm_lost_reason_view_form |
crm.lost.reason.form | crm.lost.reason | form | New |
crm_lost_reason_view_search |
crm.lost.reason.view.search | crm.lost.reason | search | New |
crm_opportunity_report_view_graph |
crm.opportunity.report.graph | crm.opportunity.report | graph | New |
crm_opportunity_report_view_graph_lead |
crm.opportunity.report.graph.lead | crm.opportunity.report | graph | New |
crm_opportunity_report_view_pivot |
crm.opportunity.report.pivot | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_pivot_lead |
crm.opportunity.report.view.pivot.lead | crm.opportunity.report | pivot | New |
crm_opportunity_report_view_search |
crm.opportunity.report.select | crm.opportunity.report | search | New |
crm_planner |
crm_planner | ir.ui.view | qweb | New |
crm_stage_form |
crm.stage.form | crm.stage | form | New |
crm_stage_tree |
crm.stage.tree | crm.stage | tree | New |
crm_team_salesteams_view_kanban |
crm.team.kanban | crm.team | data | Inherits sales_team.crm_team_salesteams_view_kanban |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
sales_team_form_view_in_crm |
crm.team.form | crm.team | xpath | Inherits sales_team.crm_team_view_form |
view_crm_case_leads_filter |
CRM - Leads Search | crm.lead | search | New |
view_crm_case_opportunities_filter |
CRM - Opportunities Search | crm.lead | search | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_meeting_search |
CRM - Meetings Search | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
view_sale_config_settings |
crm settings | sale.config.settings | div | Inherits base_setup.view_sale_config_settings |
No new fields.
Public methods (12)auto_set_parent_id(self, cr, uid, ids, context=None)
automatic_process_cb(self, cr, uid, ids, context=None)
clean_emails(self, cr, uid, context=None)
close_cb(self, cr, uid, ids, context=None)
compute_models(self, cr, uid, ids, context=None)
default_get(self, cr, uid, fields, context=None)
get_fk_on(self, cr, table)
merge_cb(self, cr, uid, ids, context=None)
next_cb(self, cr, uid, ids, context=None)
parent_migration_process_cb(self, cr, uid, ids, context=None)
start_process_cb(self, cr, uid, ids, context=None)
update_all_process_cb(self, cr, uid, ids, context=None)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)create(self, cr, uid, vals, context=None)
activity_1_id
Many2one → crm.activity
string='Next Activity 1'
args: 'crm.activity'
activity_2_id
Many2one → crm.activity
string='Next Activity 2'
args: 'crm.activity'
activity_3_id
Many2one → crm.activity
string='Next Activity 3'
args: 'crm.activity'
days
Integer
default=0
help='Number of days before executing the action, allowing you to plan the date of the action.'
args: 'Number of days'
sequence
Integer
default=0
args: 'Sequence'
subtype_id
Many2one → mail.message.subtype
ondelete='cascade'
required=True
string='Message Subtype'
args: 'mail.message.subtype'
team_id
Many2one → crm.team
string='Sales Team'
args: 'crm.team'
create(self, values)
unlink(self)
author_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Author'
company_id
Many2one → res.company
readonly=True
args: 'res.company', 'Company'
country_id
Many2one → res.country
readonly=True
args: 'res.country', 'Country'
date
Datetime
readonly=True
args: 'Date'
lead_type
Char
help='Type is used to separate Leads and Opportunities'
selection=[('lead', 'Lead'), ('opportunity', 'Opportunity')]
string='Type'
partner_id
Many2one → res.partner
readonly=True
args: 'res.partner', 'Partner/Customer'
stage_id
Many2one → crm.stage
readonly=True
args: 'crm.stage', 'Stage'
subtype_id
Many2one → mail.message.subtype
readonly=True
args: 'mail.message.subtype', 'Activity'
team_id
Many2one → crm.team
readonly=True
args: 'crm.team', 'Sales Team'
user_id
Many2one → res.users
readonly=True
args: 'res.users', 'Responsible'
init(self, cr)
lead_id
Many2one → crm.lead
required=True
args: 'crm.lead', 'Lead'
lost_reason_id
Many2one → crm.lost.reason
action_lost_reason_apply(self)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)init(self, cr)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (5)action_your_pipeline(self, cr, uid, context=None)
create(self, cr, uid, vals, context=None)
onchange_use_leads_opportunities(self, cr, uid, ids, use_leads, use_opportunities, context=None)
unlink(self, cr, uid, ids, context=None)
write(self, cr, uid, ids, vals, context=None)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (4)get_default_alias_prefix(self, cr, uid, ids, context=None)
get_default_generate_sales_team_alias(self, cr, uid, ids, context=None)
set_default_alias_prefix(self, cr, uid, ids, context=None)
set_default_generate_sales_team_alias(self, cr, uid, ids, context=None)
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/8.0/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Customer Relationship Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Rucha (Open ERP), Atul Patel (OpenERP), Randhir Mayatra (OpenERP), Stephane Wirtel, Odoo Translation Bot, Turkesh Patel (Open ERP), Christophe Matthieu, ajay javiya (OpenERP), Martin Trigaux, Foram Katharotiya (OpenERP), Fabien Pinckaers, Antony Lesuisse, Olivier Dony, Rajesh Prajapati (OpenERP), Thibault Delavallée, Vo Minh Thu, Launchpad Translations on behalf of openerp, Quentin (OpenERP), Denis Ledoux, Fabien Meghazi, niv-openerp, ggh-openerp, Christophe Simonis, David Monjoie, Xavier Morel, Goffin Simon, Anael Closson, dle@openerp.com, Cedric Snauwaert, Frédéric van der Essen, Nicolas Martinelli, Ravish (Open ERP), Kersten Jeremy, Dharti Ratani (Open ERP), Amit Bhavsar (Open ERP), Paramjit Singh Sahota, Nicolas Lempereur, Nimesh Contractor (OpenERP), Amit Vora, Richard Mathot, Amit Vora (OpenERP), Géry Debongnie, Darshan Kalola (OpenERP Trainee), jke-openerp, Aaron Bohy, Thibault Delavallee, Bharat R. Devnani (OpenERP), Richard Mathot (OpenERP), ged-odoo, Jaydeep Barot (OpenERP Trainee), Mahendra Barad (OpenERP), Jeremy Kersten, ima-openerp, Gery Debongnie, Randhir Mayatra rma-openerp, Amit Vora (OpenERP Trainee), sgo@tinyerp.com, Darshan Kalola (OpenERP), Darshan Kalola, Sunil Sharma (OpenERP Trainee), Sunil Sharma (OpenERP), Mantavya Gajjar, Prashant Panchal (OpenERP), Ravi Gadhia, Parth Gajjar (Open ERP), Barad Mahendra, Rucha Dave, DJ Patel |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/crm |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:45:39 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_action_rule - base - resource - base_setup - web_kanban - web - sales_team - web_kanban_sparkline - email_template - calendar - web_calendar - board - fetchmail |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | The generic OpenERP Customer Relationship Management ==================================================== This application enables a group of people to intelligently and efficiently manage leads, opportunities, meetings and phone calls. It manages key tasks such as communication, identification, prioritization, assignment, resolution and notification. OpenERP ensures that all cases are successfully tracked by users, customers and suppliers. It can automatically send reminders, escalate the request, trigger specific methods and many other actions based on your own enterprise rules. The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and OpenERP. That way, users can just send emails to the request tracker. OpenERP will take care of thanking them for their message, automatically routing it to the appropriate staff and make sure all future correspondence gets to the right place. Dashboard for CRM will include: ------------------------------- * Planned Revenue by Stage and User (graph) * Opportunities by Stage (graph) |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
base_partner_merge_automatic_wizard_form |
base.partner.merge.automatic.wizard.form | base.partner.merge.automatic.wizard | form | New |
crm_case_calendar_view_leads |
CRM - Leads Calendar | crm.lead | calendar | New |
crm_case_categ-view |
crm.case.categ.form | crm.case.categ | form | New |
crm_case_categ_tree-view |
crm.case.categ.tree | crm.case.categ | tree | New |
crm_case_form_view_leads |
CRM - Leads Form | crm.lead | form | New |
crm_case_form_view_oppor |
Opportunities | crm.lead | form | New |
crm_case_graph_view_leads |
Opportunities | crm.lead | graph | New |
crm_case_inbound_phone_tree_view |
CRM - Logged Phone Calls Tree | crm.phonecall | tree | New |
crm_case_kanban_view_leads |
CRM - Leads Kanban | crm.lead | kanban | New |
crm_case_phone_calendar_view |
CRM - Phone Calls Calendar | crm.phonecall | calendar | New |
crm_case_phone_form_view |
CRM - Phone Call Form | crm.phonecall | form | New |
crm_case_phone_tree_view |
CRM - Phone Calls Tree | crm.phonecall | tree | New |
crm_case_section_salesteams_view_kanban |
crm.case.section.kanban | crm.case.section | data | Inherits sales_team.crm_case_section_salesteams_view_kanban |
crm_case_stage_form |
crm.case.stage.form | crm.case.stage | form | New |
crm_case_stage_tree |
crm.case.stage.tree | crm.case.stage | tree | New |
crm_case_tree_view_leads |
Leads | crm.lead | tree | New |
crm_case_tree_view_oppor |
Opportunities Tree | crm.lead | tree | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.case.stage | search | New |
crm_segmentation-view |
crm.segmentation.form | crm.segmentation | form | New |
crm_segmentation_line-view |
crm.segmentation.line.form | crm.segmentation.line | form | New |
crm_segmentation_line_tree-view |
crm.segmentation.line.tree | crm.segmentation.line | tree | New |
crm_segmentation_tree-view |
crm.segmentation.tree | crm.segmentation | tree | New |
crm_tracking_campaign_form |
crm.tracking.campaign.form | crm.tracking.campaign | form | New |
crm_tracking_campaign_tree |
crm.tracking.campaign.tree | crm.tracking.campaign | tree | New |
crm_tracking_medium_view_form |
crm.tracking.medium.form | crm.tracking.medium | form | New |
crm_tracking_medium_view_tree |
crm.tracking.medium.tree | crm.tracking.medium | tree | New |
crm_tracking_source_view_form |
crm.tracking.source.form | crm.tracking.source | form | New |
crm_tracking_source_view_tree |
crm.tracking.source.tree | crm.tracking.source | tree | New |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
phonecall2phonecall2meeting_view |
crm.phonecall2meeting.form | crm.phonecall2meeting | form | New |
phonecall_to_phonecall_view |
crm.phonecall2phonecall.form | crm.phonecall2phonecall | form | New |
sales_team_form_view_in_crm |
crm.case.section.form | crm.case.section | xpath | Inherits sales_team.crm_case_section_view_form |
view_crm_case_leads_filter |
CRM - Leads Search | crm.lead | search | New |
view_crm_case_opportunities_filter |
CRM - Opportunities Search | crm.lead | search | New |
view_crm_case_phonecalls_filter |
CRM - Phone Calls Search | crm.phonecall | search | New |
view_crm_case_section_categ_categ2_filter |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | search | New |
view_crm_case_section_categ_categ2_form |
CRM Report - Section, Category and Type(Form) | report.crm.case.section.categ.categ2 | form | New |
view_crm_case_section_categ_categ2_graph |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | graph | New |
view_crm_case_section_categ_categ2_tree |
CRM Report - Section, Category and Type(Tree) | report.crm.case.section.categ.categ2 | tree | New |
view_crm_case_section_categ_filter |
CRM Report - Teams and Type(Select) | report.crm.case.section.categ2 | search | New |
view_crm_case_section_categ_form |
CRM Report - Teams and Type(Form) | report.crm.case.section.categ2 | form | New |
view_crm_case_section_categ_graph |
CRM Report - Teams and Type(Graph) | report.crm.case.section.categ2 | graph | New |
view_crm_case_section_categ_stage_filter |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | search | New |
view_crm_case_section_categ_stage_form |
CRM Report - Team, Category and Stage(Form) | report.crm.case.section.categ.stage | form | New |
view_crm_case_section_categ_stage_graph |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | graph | New |
view_crm_case_section_categ_stage_tree |
CRM Report - Team, Category and Stage(Tree) | report.crm.case.section.categ.stage | tree | New |
view_crm_case_section_categ_tree |
CRM Report - Teams and Type(Tree) | report.crm.case.section.categ2 | tree | New |
view_crm_case_section_stage_filter |
CRM Report - Teams and Stage(Select) | report.crm.case.section.stage | search | New |
view_crm_case_section_stage_form |
CRM Report - Teams and Stage(Form) | report.crm.case.section.stage | form | New |
view_crm_case_section_stage_graph |
CRM Report - Teams and Stage(Graph) | report.crm.case.section.stage | graph | New |
view_crm_case_section_stage_tree |
CRM Report - Teams and Stage(Tree) | report.crm.case.section.stage | tree | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_meeting_search |
CRM - Meetings Search | calendar.event | xpath | Inherits calendar.view_calendar_event_search |
view_crm_payment_mode_form |
crm.payment.mode.form | crm.payment.mode | form | New |
view_crm_payment_mode_tree |
crm.payment.mode.tree | crm.payment.mode | tree | New |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | data | Inherits base.view_partner_form |
view_partners_form_crm_calls |
view.res.partner.form.crm.inherited.calls | res.partner | data | Inherits base.view_partner_form |
view_report_crm_lead_filter |
crm.lead.report.select | crm.lead.report | search | New |
view_report_crm_lead_graph |
crm.lead.report.graph | crm.lead.report | graph | New |
view_report_crm_lead_graph_two |
crm.lead.report.graph.two | crm.lead.report | graph | New |
view_report_crm_opportunity_filter |
crm.opportunity.report.select | crm.opportunity.report | search | New |
view_report_crm_opportunity_graph |
crm.opportunity.report.graph | crm.opportunity.report | graph | New |
view_report_crm_phonecall_filter |
crm.phonecall.report.select | crm.phonecall.report | search | New |
view_report_crm_phonecall_graph |
crm.phonecall.report.graph | crm.phonecall.report | graph | New |
view_sale_config_settings |
crm settings | sale.config.settings | data | Inherits base_setup.view_sale_config_settings |
No new fields.
Public methods (12)auto_set_parent_id(self, cr, uid, ids, context=None)
automatic_process_cb(self, cr, uid, ids, context=None)
clean_emails(self, cr, uid, context=None)
close_cb(self, cr, uid, ids, context=None)
compute_models(self, cr, uid, ids, context=None)
default_get(self, cr, uid, fields, context=None)
get_fk_on(self, cr, table)
merge_cb(self, cr, uid, ids, context=None)
next_cb(self, cr, uid, ids, context=None)
parent_migration_process_cb(self, cr, uid, ids, context=None)
start_process_cb(self, cr, uid, ids, context=None)
update_all_process_cb(self, cr, uid, ids, context=None)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)create(self, cr, uid, vals, context=None)
No new fields.
Public methods (2)create(self, cr, uid, vals, context=None)
unlink(self, cr, uid, ids, context=None)
No new fields.
Public methods (1)init(self, cr)
No new fields.
Public methods (1)init(self, cr)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (2)tracking_fields(self)
tracking_get_values(self, cr, uid, vals, context=None)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)get_utm_domain_cookies(self)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (2)get_default_alias_prefix(self, cr, uid, ids, context=None)
set_default_alias_prefix(self, cr, uid, ids, context=None)
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/7.0/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Customer Relationship Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Jagdish Panchal (Open ERP), Twinkle Christian (OpenERP), Cecile Tonglet, Rucha (Open ERP), Atul Patel (OpenERP), Jalpesh Patel (OpenERP), Randhir Mayatra (OpenERP), Stephane Wirtel, Odoo Translation Bot, Turkesh Patel (Open ERP), Numerigraphe - Lionel Sausin, Christophe Matthieu, Pinakin Nayi (OpenERP), DBR (OpenERP), Harry (OpenERP), Antonin Bourguignon, pankita shah (Open ERP), ajay javiya (OpenERP), Martin Trigaux, Ajay Chauhan (OpenERP), Foram Katharotiya (OpenERP), Bhumika (OpenERP), Purnendu Singh (OpenERP), Saurang Suthar (OpenERP), Fabien Pinckaers, Antony Lesuisse, Bharat Devnani (OpenERP), Meera Trambadia (OpenERP), Olivier Dony, Rajesh Prajapati (OpenERP), Twinkle (OpenERP), Divyesh Makwana (Open ERP), Tejas Tank, Thibault Delavallée, Vo Minh Thu, Hardik, Josse Colpaert, Arnaud Pineux, pso (OpenERP), Sbh (Openerp), Amit Patel (OpenERP), Launchpad Translations on behalf of openerp, vta vta@openerp.com, Quentin (OpenERP), Kuldeep Joshi (OpenERP), Nimesh (Open ERP), Denis Ledoux, Mayur Maheshwari (OpenERP), Jigar Amin - OpenERP, Sanjay Gohel (Open ERP), Alexis de Lattre, Fabien Meghazi, niv-openerp, Xavier ALT, Christophe Simonis, Ujjvala Collins (OpenERP), Ravi Gohil (OpenERP), Jiten (OpenERP), Dharti Ratani (OpenERP), Anael Closson, Khushboo Bhatt (Open ERP), dle@openerp.com, Bhumi Thakkar (Open ERP), Roberto López López (OpenERP), Cedric Snauwaert, Amit Patel, Simon Lejeune, Frédéric van der Essen, Gilles Major, Chris Biersbach, Vijaykumar Baladaniya, Jigar Amin, Somesh Khare (OpenERP), Amit (OpenERP), Minh Tran, Ankita Patel (OpenERP), RGA(OpenERP), Dharti Ratani (Open ERP), Paramjit Singh Sahota, Rifakat, Jérome Maes, hacker on test server, Georges Grogero |
| WEBSITE | |
| WEBSITE | http://www.openerp.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:43:09 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_action_rule - base - base_setup - web_kanban - web - base_status - process - email_template - base_calendar - resource - board - fetchmail |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | The generic OpenERP Customer Relationship Management ==================================================== This application enables a group of people to intelligently and efficiently manage leads, opportunities, meetings and phone calls. It manages key tasks such as communication, identification, prioritization, assignment, resolution and notification. OpenERP ensures that all cases are successfully tracked by users, customers and suppliers. It can automatically send reminders, escalate the request, trigger specific methods and many other actions based on your own enterprise rules. The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and OpenERP. That way, users can just send emails to the request tracker. OpenERP will take care of thanking them for their message, automatically routing it to the appropriate staff and make sure all future correspondence gets to the right place. Dashboard for CRM will include: ------------------------------- * Planned Revenue by Stage and User (graph) * Opportunities by Stage (graph) |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
board_crm_statistical_form |
CRM - Statistical Dashboard Form | board.board | form | New |
crm_case_calendar_view_leads |
CRM - Leads Calendar | crm.lead | calendar | New |
crm_case_categ-view |
crm.case.categ.form | crm.case.categ | form | New |
crm_case_categ_tree-view |
crm.case.categ.tree | crm.case.categ | tree | New |
crm_case_channel_view_form |
crm.case.channel.form | crm.case.channel | form | New |
crm_case_channel_view_tree |
crm.case.channel.tree | crm.case.channel | tree | New |
crm_case_form_view_leads |
CRM - Leads Form | crm.lead | form | New |
crm_case_form_view_oppor |
Opportunities | crm.lead | form | New |
crm_case_graph_view_leads |
Opportunities | crm.lead | graph | New |
crm_case_inbound_phone_tree_view |
CRM - Logged Phone Calls Tree | crm.phonecall | tree | New |
crm_case_kanban_view_leads |
CRM - Leads Kanban | crm.lead | kanban | New |
crm_case_phone_calendar_view |
CRM - Phone Calls Calendar | crm.phonecall | calendar | New |
crm_case_phone_form_view |
CRM - Phone Call Form | crm.phonecall | form | New |
crm_case_phone_tree_view |
CRM - Phone Calls Tree | crm.phonecall | tree | New |
crm_case_resource_type_form |
crm.case.resource.type.form | crm.case.resource.type | form | New |
crm_case_resource_type_tree |
crm.case.resource.type.tree | crm.case.resource.type | tree | New |
crm_case_section_view_form |
crm.case.section.form | crm.case.section | form | New |
crm_case_section_view_tree |
crm.case.section.tree | crm.case.section | tree | New |
crm_case_stage_form |
crm.case.stage.form | crm.case.stage | form | New |
crm_case_stage_tree |
crm.case.stage.tree | crm.case.stage | tree | New |
crm_case_tree_view_leads |
Leads | crm.lead | tree | New |
crm_case_tree_view_oppor |
Opportunities Tree | crm.lead | tree | New |
crm_lead_partner_kanban_view |
res.partner.kanban.inherit | res.partner | field | Inherits base.res_partner_kanban_view |
crm_lead_stage_search |
Stage - Search | crm.case.stage | search | New |
crm_segmentation-view |
crm.segmentation.form | crm.segmentation | form | New |
crm_segmentation_line-view |
crm.segmentation.line.form | crm.segmentation.line | form | New |
crm_segmentation_line_tree-view |
crm.segmentation.line.tree | crm.segmentation.line | tree | New |
crm_segmentation_tree-view |
crm.segmentation.tree | crm.segmentation | tree | New |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
opportunity2phonecall_view |
crm.opportunity2phonecall.form | crm.opportunity2phonecall | form | New |
phonecall2phonecall2meeting_view |
crm.phonecall2meeting.form | crm.phonecall2meeting | form | New |
phonecall_to_phonecall_view |
crm.phonecall2phonecall.form | crm.phonecall2phonecall | form | New |
res_partner_view_buttons |
res.partner.view.buttons | res.partner | xpath | Inherits base.view_partner_form |
view_crm_case_leads_filter |
CRM - Leads Search | crm.lead | search | New |
view_crm_case_opportunities_filter |
CRM - Opportunities Search | crm.lead | search | New |
view_crm_case_phonecalls_filter |
CRM - Phone Calls Search | crm.phonecall | search | New |
view_crm_case_section_categ_categ2_filter |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | search | New |
view_crm_case_section_categ_categ2_form |
CRM Report - Section, Category and Type(Form) | report.crm.case.section.categ.categ2 | form | New |
view_crm_case_section_categ_categ2_graph |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | graph | New |
view_crm_case_section_categ_categ2_tree |
CRM Report - Section, Category and Type(Tree) | report.crm.case.section.categ.categ2 | tree | New |
view_crm_case_section_categ_filter |
CRM Report - Teams and Type(Select) | report.crm.case.section.categ2 | search | New |
view_crm_case_section_categ_form |
CRM Report - Teams and Type(Form) | report.crm.case.section.categ2 | form | New |
view_crm_case_section_categ_graph |
CRM Report - Teams and Type(Graph) | report.crm.case.section.categ2 | graph | New |
view_crm_case_section_categ_stage_filter |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | search | New |
view_crm_case_section_categ_stage_form |
CRM Report - Team, Category and Stage(Form) | report.crm.case.section.categ.stage | form | New |
view_crm_case_section_categ_stage_graph |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | graph | New |
view_crm_case_section_categ_stage_tree |
CRM Report - Team, Category and Stage(Tree) | report.crm.case.section.categ.stage | tree | New |
view_crm_case_section_categ_tree |
CRM Report - Teams and Type(Tree) | report.crm.case.section.categ2 | tree | New |
view_crm_case_section_stage_filter |
CRM Report - Teams and Stage(Select) | report.crm.case.section.stage | search | New |
view_crm_case_section_stage_form |
CRM Report - Teams and Stage(Form) | report.crm.case.section.stage | form | New |
view_crm_case_section_stage_graph |
CRM Report - Teams and Stage(Graph) | report.crm.case.section.stage | graph | New |
view_crm_case_section_stage_tree |
CRM Report - Teams and Stage(Tree) | report.crm.case.section.stage | tree | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_meeting_search |
CRM - Meetings Search | crm.meeting | xpath | Inherits base_calendar.view_crm_meeting_search |
view_crm_opportunity_stage_graph |
Opportunities By Stage - Graph | crm.lead.report | graph | New |
view_crm_opportunity_user_stage_graph |
Opportunities By Stage Per User - Graph | crm.lead.report | graph | New |
view_crm_payment_mode_form |
crm.payment.mode.form | crm.payment.mode | form | New |
view_crm_payment_mode_tree |
crm.payment.mode.tree | crm.payment.mode | tree | New |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | field | Inherits base.view_partner_form |
view_report_crm_lead_filter |
crm.lead.report.select | crm.lead.report | search | New |
view_report_crm_lead_graph |
crm.lead.report.graph | crm.lead.report | graph | New |
view_report_crm_lead_tree |
crm.lead.report.tree | crm.lead.report | tree | New |
view_report_crm_opportunity_graph |
crm.opportunity.report.graph | crm.lead.report | graph | New |
view_report_crm_opportunity_tree |
crm.lead.report.tree | crm.lead.report | tree | New |
view_report_crm_phonecall_filter |
crm.phonecall.report.select | crm.phonecall.report | search | New |
view_report_crm_phonecall_graph |
crm.phonecall.report.graph | crm.phonecall.report | graph | New |
view_report_crm_phonecall_tree |
crm.phonecall.report.tree | crm.phonecall.report | tree | New |
view_sale_config_settings |
crm settings | sale.config.settings | div | Inherits base_setup.view_sale_config_settings |
No new fields.
Public methods (1)create(self, cr, uid, vals, context=None)
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/6.1/crm |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Customer Relationship Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Rucha (Open ERP), Atul Patel (OpenERP), Stephane Wirtel, Numerigraphe - Lionel Sausin, DBR (OpenERP), Harry (OpenERP), Bhumika (OpenERP), Fabien Pinckaers, Antony Lesuisse, Meera Trambadia (OpenERP), Olivier Dony, Thibault Delavallée, Vo Minh Thu, Launchpad Translations on behalf of openerp, Quentin (OpenERP), Kuldeep Joshi (OpenERP), Nimesh (Open ERP), Mayur Maheshwari (OpenERP), Jigar Amin - OpenERP, vro, Fabien Meghazi, niv-openerp, Xavier ALT, Christophe Simonis, Ujjvala Collins (OpenERP), Xavier Morel, Khushboo Bhatt (Open ERP), Jigar Amin, Serpent Consulting Services, Amit (OpenERP), Minh Tran, Amit Bhavsar (Open ERP), Thibault Francois, Carlos Vásquez, odoo, ksa (Open ERP), Husen Daudi, Els Van Vossel, Israel Fermin Montilla, Rifakat Haradwala (Open ERP), Hardik Ansodariy (OpenERP), ssu, Bharat (OpenERP), aag (OpenERP), Yogesh (OpenERP), Sbh (OpenERP), jam-openerp, tfr@openerp.com, ron@tinyerp.com, fp, qdp-launchpad@tinyerp.com, AMP (OpenERP), Tejas (OpenERP), Amit Parmar (OpenERP), RME (OpenERP), RavishchanraMurari (Open ERP), Anup (OpenERP), YSA (Openerp), Atik Agewan (OpenERP), Ariel Figueroa, tfr, Ashutosh Srivastava (Open ERP), Aline Preillon |
| WEBSITE | |
| WEBSITE | http://www.openerp.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:41:35 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base_action_rule - base - base_tools - base_setup - process - base_calendar - resource - board - fetchmail |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
The generic OpenERP Customer Relationship Management.
=====================================================
This system enables a group of people to intelligently and efficiently manage
leads, opportunities, meeting, phonecall etc.
It manages key tasks such as communication, identification, prioritization,
assignment, resolution and notification.
OpenERP ensures that all cases are successfully tracked by users, customers and
suppliers. It can automatically send reminders, escalate the request, trigger
specific methods and lots of other actions based on your own enterprise rules.
The greatest thing about this system is that users don't need to do anything
special. They can just send email to the request tracker. OpenERP will take
care of thanking them for their message, automatically routing it to the
appropriate staff, and make sure all future correspondence gets to the right
place.
The CRM module has a email gateway for the synchronisation interface
between mails and OpenERP.
Creates a dashboard for CRM that includes:
* Opportunities by Categories (graph)
* Opportunities by Stage (graph)
* Planned Revenue by Stage and User (graph)
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
attendee_form_view_inherit |
calendar.attendee.form.inherit | calendar.attendee | field | Inherits base_calendar.base_calendar_attendee_form_view |
board_crm_form |
Sales Dashboard Form | board.board | form | New |
board_crm_statistical_form |
CRM - Statistical Dashboard Form | board.board | form | New |
crm_add_new_note_view |
crm.new.add.note.form | crm.add.note | form | New |
crm_case_calendar_view_leads |
CRM - Leads Calendar | crm.lead | calendar | New |
crm_case_calendar_view_meet |
CRM - Meetings Calendar | crm.meeting | calendar | New |
crm_case_categ-view |
crm.case.categ.form | crm.case.categ | form | New |
crm_case_categ_tree-view |
crm.case.categ.tree | crm.case.categ | tree | New |
crm_case_channel_view_form |
crm.case.channel.form | crm.case.channel | form | New |
crm_case_channel_view_tree |
crm.case.channel.tree | crm.case.channel | tree | New |
crm_case_form_view_leads |
CRM - Leads Form | crm.lead | form | New |
crm_case_form_view_meet |
CRM - Meetings Form | crm.meeting | form | New |
crm_case_form_view_oppor |
Opportunities | crm.lead | form | New |
crm_case_gantt_view_meet |
CRM - Meetings Gantt | crm.meeting | gantt | New |
crm_case_graph_view_opportunity |
CRM - Opportunity Graph | crm.lead | graph | New |
crm_case_inbound_phone_tree_view |
CRM - Logged Phone Calls Tree | crm.phonecall | tree | New |
crm_case_kanban_view_leads |
CRM - Leads Kanban | crm.lead | kanban | New |
crm_case_my_open_oppor |
Opportunities | crm.lead | tree | New |
crm_case_phone_calendar_view |
CRM - Phone Calls Calendar | crm.phonecall | calendar | New |
crm_case_phone_form_view |
CRM - Phone Call Form | crm.phonecall | form | New |
crm_case_phone_tree_view |
CRM - Phone Calls Tree | crm.phonecall | tree | New |
crm_case_resource_type_form |
crm.case.resource.type.form | crm.case.resource.type | form | New |
crm_case_resource_type_tree |
crm.case.resource.type.tree | crm.case.resource.type | tree | New |
crm_case_section_view_form |
crm.case.section.form | crm.case.section | form | New |
crm_case_section_view_tree |
crm.case.section.tree | crm.case.section | tree | New |
crm_case_stage_form |
crm.case.stage.form | crm.case.stage | form | New |
crm_case_stage_tree |
crm.case.stage.tree | crm.case.stage | tree | New |
crm_case_tree_view_leads |
Leads | crm.lead | tree | New |
crm_case_tree_view_meet |
CRM - Meetings Tree | crm.meeting | tree | New |
crm_case_tree_view_oppor |
Opportunities Tree | crm.lead | tree | New |
crm_lead_stage_search |
Stage - Search | crm.case.stage | search | New |
crm_segmentation-view |
crm.segmentation.form | crm.segmentation | form | New |
crm_segmentation_line-view |
crm.segmentation.line.form | crm.segmentation.line | form | New |
crm_segmentation_line_tree-view |
crm.segmentation.line.tree | crm.segmentation.line | tree | New |
crm_segmentation_tree-view |
crm.segmentation.tree | crm.segmentation | tree | New |
merge_opportunity_form |
crm.merge.opportunity.form | crm.merge.opportunity | form | New |
opportunity2phonecall_view |
crm.opportunity2phonecall.form | crm.opportunity2phonecall | form | New |
phonecall2opportunity_view |
crm.phonecall2opportunity.form | crm.phonecall2opportunity | form | New |
phonecall2phonecall2meeting_view |
crm.phonecall2meeting.form | crm.phonecall2meeting | form | New |
phonecall_to_phonecall_view |
crm.phonecall2phonecall.form | crm.phonecall2phonecall | form | New |
view_base_action_rule_line_form1 |
base.action.rule.form.inherit | base.action.rule | group | Inherits base_action_rule.view_base_action_rule_form |
view_base_action_rule_line_form2 |
base.action.rule.form2.inherit | base.action.rule | group | Inherits base_action_rule.view_base_action_rule_form |
view_base_action_rule_line_form3 |
base.action.rule.form3.inherit | base.action.rule | field | Inherits base_action_rule.view_base_action_rule_form |
view_base_action_rule_line_form4 |
base.action.rule.form4.inherit | base.action.rule | field | Inherits base_action_rule.view_base_action_rule_form |
view_crm_case_leads_filter |
CRM - Leads Search | crm.lead | search | New |
view_crm_case_meetings_filter |
CRM - Meetings Search | crm.meeting | search | New |
view_crm_case_opportunities_filter |
CRM - Opportunities Search | crm.lead | search | New |
view_crm_case_phonecalls_filter |
CRM - Phone Calls Search | crm.phonecall | search | New |
view_crm_case_scheduled_phonecalls_filter |
CRM - Scheduled Calls Search | crm.phonecall | search | New |
view_crm_case_section_categ_categ2_filter |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | search | New |
view_crm_case_section_categ_categ2_form |
CRM Report - Section, Category and Type(Form) | report.crm.case.section.categ.categ2 | form | New |
view_crm_case_section_categ_categ2_graph |
CRM Report - Section, Category and Type(Select) | report.crm.case.section.categ.categ2 | graph | New |
view_crm_case_section_categ_categ2_tree |
CRM Report - Section, Category and Type(Tree) | report.crm.case.section.categ.categ2 | tree | New |
view_crm_case_section_categ_filter |
CRM Report - Teams and Type(Select) | report.crm.case.section.categ2 | search | New |
view_crm_case_section_categ_form |
CRM Report - Teams and Type(Form) | report.crm.case.section.categ2 | form | New |
view_crm_case_section_categ_graph |
CRM Report - Teams and Type(Graph) | report.crm.case.section.categ2 | graph | New |
view_crm_case_section_categ_stage_filter |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | search | New |
view_crm_case_section_categ_stage_form |
CRM Report - Team, Category and Stage(Form) | report.crm.case.section.categ.stage | form | New |
view_crm_case_section_categ_stage_graph |
CRM Report - Section, Category and Stage(Select) | report.crm.case.section.categ.stage | graph | New |
view_crm_case_section_categ_stage_tree |
CRM Report - Team, Category and Stage(Tree) | report.crm.case.section.categ.stage | tree | New |
view_crm_case_section_categ_tree |
CRM Report - Teams and Type(Tree) | report.crm.case.section.categ2 | tree | New |
view_crm_case_section_stage_filter |
CRM Report - Teams and Stage(Select) | report.crm.case.section.stage | search | New |
view_crm_case_section_stage_form |
CRM Report - Teams and Stage(Form) | report.crm.case.section.stage | form | New |
view_crm_case_section_stage_graph |
CRM Report - Teams and Stage(Graph) | report.crm.case.section.stage | graph | New |
view_crm_case_section_stage_tree |
CRM Report - Teams and Stage(Tree) | report.crm.case.section.stage | tree | New |
view_crm_lead2opportunity_partner |
crm.lead2opportunity.partner.form | crm.lead2opportunity.partner | form | New |
view_crm_lead2opportunity_partner_mass |
crm.lead2opportunity.partner.mass.form | crm.lead2opportunity.partner.mass | form | New |
view_crm_lead2partner |
crm.lead2partner.view | crm.lead2partner | form | New |
view_crm_opportunity_categ_graph |
Opportunities By Categories - Graph | crm.lead.report | graph | New |
view_crm_opportunity_stage_graph |
Opportunities By Stage - Graph | crm.lead.report | graph | New |
view_crm_opportunity_user_graph1 |
crm.opportunity.user.graph1 | crm.lead.report | graph | New |
view_crm_opportunity_user_stage_graph |
Opportunities By Stage Per User - Graph | crm.lead.report | graph | New |
view_crm_partner2opportunity |
crm.crm.partner2opportunity | crm.partner2opportunity | form | New |
view_crm_partner_info_form1 |
res.partner.crm.info.inherit1 | res.partner | page | Inherits base.view_partner_form |
view_crm_phonecall2partner |
crm.phonecall2partner.view | crm.phonecall2partner | form | New |
view_crm_phonecall2partner_create |
crm.phonecall2partner.view.create | crm.phonecall2partner | form | New |
view_partners_form_crm1 |
view.res.partner.form.crm.inherited1 | res.partner | field | Inherits base.view_partner_form |
view_partners_form_crm3 |
view.res.partner.search.crm.inherited3 | res.partner | field | Inherits base.view_res_partner_filter |
view_partners_tree_crm2 |
view.res.partner.tree.crm.inherited2 | res.partner | field | Inherits base.view_partner_tree |
view_report_crm_lead_filter |
crm.lead.report.select | crm.lead.report | search | New |
view_report_crm_lead_graph |
crm.lead.report.graph | crm.lead.report | graph | New |
view_report_crm_lead_tree |
crm.lead.report.tree | crm.lead.report | tree | New |
view_report_crm_oppor_graph |
crm.lead.report.graph | crm.lead.report | graph | New |
view_report_crm_opportunity_graph |
crm.opportunity.report.graph | crm.lead.report | graph | New |
view_report_crm_opportunity_tree |
crm.lead.report.tree | crm.lead.report | tree | New |
view_report_crm_phonecall_filter |
crm.phonecall.report.select | crm.phonecall.report | search | New |
view_report_crm_phonecall_graph |
crm.phonecall.report.graph | crm.phonecall.report | graph | New |
view_report_crm_phonecall_tree |
crm.phonecall.report.tree | crm.phonecall.report | tree | New |
view_users_form_simple_modif_inherited1 |
view.users.form.crm.modif.inherited1 | res.users | group | Inherits base.view_users_form_simple_modif |
view_users_form_simple_modif_inherited2 |
view.users.form.crm.modif.inherited2 | res.users | group | Inherits base.view_users_form |
No models found for this module.