Mail Activity Plan Domain

This module extends Odoo’s activity plan feature with domain-based
filtering at two levels:
Plan domain
Each activity plan gains a Domain field. Only records matching this
domain will have the plan available in the scheduling wizard
(mail.activity.schedule). This lets you restrict plans to, for
example, company-type partners or records in a specific stage.
Template domain
Each line of an activity plan (template) gains its own Domain field.
When executing a plan, activities whose template domain does not match
the target record are silently skipped. This allows a single plan to
cover heterogeneous records while still generating only the relevant
activities per record.
Notes
- The error preview shown in the scheduling wizard (missing responsible,
etc.) deliberately ignores template domains so that all potential
configuration issues remain visible.
- When scheduling a plan on multiple records, execution is serialized
record by record so that each record is evaluated independently
against both plan and template domains.
- Domain syntax follows the standard Odoo domain format, e.g.
[('is_company', '=', True)].
Table of contents
To use this module:
- Go to Discuss > Configuration > Activity Plans.
- Open or create an activity plan.
- In the Domain field, set the domain that records must match for
this plan to appear in the scheduling wizard (e.g.
[('is_company', '=', True)] to restrict the plan to company-type
partners). Leave empty or use [] to apply to all records.
- In the plan lines, each activity template also has its own Domain
field. Set it to skip that activity for records that do not match
(e.g. [('is_company', '=', False)] to schedule an activity only
for individual contacts). Leave empty or use [] to always
schedule the activity.
When scheduling a plan from a record, only plans whose Domain
matches that record will be listed. During execution, activities whose
template domain does not match the record are silently skipped.
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
feedback.
Do not contact contributors directly about support or help with technical issues.
This module is maintained by the OCA.
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
This module is part of the OCA/mail project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.