Project Task Recurring Activity

project_task_recurring_activity
REPOSITORY
REPOSITORYOCA/project
GIT
GIThttps://github.com/OCA/project.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/project/tree/16.0/project_task_recurring_activity
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYProject Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Cetmix
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Cetmix
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, PicchiSeba
WEBSITE
WEBSITEhttps://github.com/OCA/project
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:49
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - project
    - analytic
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - rating
    - resource
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
recurring_activity_view_form recurring_activity_view_form recurring.activity form New
view_recurring_activity_form project_task_recurring_activity_form project.task xpath Inherits project.view_task_form2
Models touched (3)

New fields (2)
  • custom_activity_ids Many2many → recurring.activity
    compute='_compute_activity_ids' copy=True store=True args: 'recurring.activity'
  • recurring_activity_ids One2many → recurring.activity
    copy=True string='activity' args: 'recurring.activity', 'project_task_id'
Public methods (2)
  • call_create_recurring_tasks(self)
  • create(self, vals_list)
    @api.model_create_multi

New fields (1)
  • old_date_recurring_task Date
    default=fields.Date.today()
Public methods (1)
  • create_recurring_tasks(self)
    Create recurring tasks

New fields (7)
  • activity_type_id Many2one → mail.activity.type
    ondelete='restrict' string='Activity Type' args: 'mail.activity.type'
  • days_after_task_creation_date Integer
  • description Html
    compute='_compute_on_activity_type_id' readonly=False sanitize_style=True store=True
  • next_recurrence_date Date
    compute='_compute_next_recurrence_date' store=True string='next_date'
  • project_task_id Many2one → project.task
    args: 'project.task'
  • summary Char
    compute='_compute_on_activity_type_id' readonly=False store=True
  • user_id Many2one → res.users
    compute='_compute_on_activity_type_id' index=True readonly=False required=True store=True string='Assigned to' args: 'res.users'
Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • delta_time(self, old, new)
    @api.model
REPOSITORY
REPOSITORYOCA/project
GIT
GIThttps://github.com/OCA/project.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/project/tree/14.0/project_task_recurring_activity
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYProject Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Cetmix
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Cetmix
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, dessanhemrayev
WEBSITE
WEBSITEhttps://github.com/OCA/project
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:03
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - project
    - analytic
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - rating
    - resource
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
recurring_activity_view_form recurring_activity_view_form recurring.activity form New
view_recurring_activity_form project_task_recurring_activity_form project.task xpath Inherits project.view_task_form2
Models touched (3)

New fields (2)
  • custom_activity_ids Many2many → recurring.activity
    compute='_compute_activity_ids' copy=True store=True args: 'recurring.activity'
  • recurring_activity_ids One2many → recurring.activity
    copy=True string='activity' args: 'recurring.activity', 'project_task_id'
Public methods (2)
  • call_create_recurring_tasks(self)
  • create(self, val)
    @api.model

New fields (1)
  • old_date_recurring_task Date
    default=fields.Date.today()
Public methods (1)
  • create_recurring_tasks(self)
    Create recurring tasks

New fields (7)
  • activity_type_id Many2one → mail.activity.type
    ondelete='restrict' string='Activity Type' args: 'mail.activity.type'
  • days_after_task_creation_date Integer
  • description Html
    sanitize_style=True string='Description'
  • next_recurrence_date Date
    compute='_compute_next_recurrence_date' store=True string='next_date'
  • project_task_id Many2one → project.task
    args: 'project.task'
  • summary Char
    string='Summary'
  • user_id Many2one → res.users
    index=True required=True string='Assigned to' args: 'res.users'
Public methods (2)
  • create(self, val)
    @api.model
  • delta_time(self, old, new)
    @api.model
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/project
PULL REQUEST
PULL REQUEST[18.0][MIG] project_task_recurring_activity: Migration to 18.0 (#1759)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/project
PULL REQUEST
PULL REQUEST[17.0][MIG] project_task_recurring_activity: Migration to 17.0 (#1671)