Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
2 Відповіді
1484 Переглядів

When a task is created, it automatically updates the subtasks that I want to pre-define.



Аватар
Відмінити
Найкраща відповідь

Hi,

Please try below code 
from odoo import models, fields, api


class ProjectTask(models.Model):

    _inherit = 'project.task'


    @api.model

    def create(self, vals):

        task = super().create(vals)


        # Only create subtasks if this is NOT a subtask already

        if not vals.get('parent_id'):

            predefined_subtasks = [

                {'name': 'Requirement Gathering'},

                {'name': 'Design'},

                {'name': 'Development'},

                {'name': 'Testing'},

                {'name': 'Deployment'},

            ]


            for subtask_data in predefined_subtasks:

                self.create({

                    'name': subtask_data['name'],

                    'project_id': __manifest__.py

'depends': ['project'],


Second Way 

UI-Only (Automated Actions - Odoo Studio)

If you're using Odoo Online (SaaS) or want to do this without code:

Go to: Settings > Technical > Automated Actions

Create a new action:

  • Model : Project Task
  • Trigger : On Creation
  • Action To Do : Create a new record

Add multiple “Create Record” actions with:

  • Model: project.task
  • Fields:
    • Name : Requirement Gathering
    • Parent Task : Record ID
    • Project : Project ID

i hope it is helpfull

Аватар
Відмінити
Найкраща відповідь

Hi,

Please refer to the code below:


from odoo import models, api


class ProjectTask(models.Model):

    _inherit = 'project.task'


    @api.model

    def create(self, vals):

        task = super(ProjectTask, self).create(vals)

        # Check if project or any condition needed

        if vals.get('project_id'):  # Or any project-specific logic

            subtasks = ['Design', 'Development', 'Testing'] # sample redefined subtask

            for sub in subtasks:

                self.create({

                    'name': sub,

                    'parent_id': task.id,

                    'project_id': task.project_id.id,

                })

        return task


Hope it helps.

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
2
серп. 25
174
2
серп. 25
1316
0
лют. 25
1454
1
січ. 25
2030
2
груд. 24
1685