Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
5503 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
1551
0
apr 23
1981
1
nov 22
4111
2
mar 24
4990
1
mar 23
2813