Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
5130 Visualizzazioni

Hello Odders,

Trying to update activities record for custom modules to be changed as "Done" when approval status is set to "Approve".


Avatar
Abbandona
Risposta migliore

To mark activities as done using Python in Odoo, you can use the write method on the 'mail.activity' model to update the activity's state to 'done'. Here is an example:

 Import the mail.activity model
from odoo import models

# Get a reference to the mail.activity model
activity_model = self.env['mail.activity']

# Use the search method to find the activities that need to be marked as done
activities = activity_model.search([('state', '=', 'to_do')])

# Update the state of each activity to 'done'
activities.write({'state': 'done'})

Alternatively, you can use automated actions to mark activities as done. To do this, you can create a new automated action with the following properties:

  • Action Type: Update a record
  • Model: mail.activity
  • Record: Current record
  • Set the following fields: state: Done

Once you have created the automated action, you can then use it in your workflow by adding a new transition with the following properties:

  • Trigger: On Change
  • Filter: approval_status = Approve
  • Action: The automated action you created earlier.

This will mark any activities associated with the record as done when the approval status is set to 'Approve'.

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
0
nov 23
1361
0
apr 23
1833
1
nov 22
3844
2
mar 24
4714
1
mar 23
2598