Odoo Help


Server Action to set deadline in 7 days

Robert Klüsener
on 9/6/13, 6:34 AM 3,758 views

I want to create a server action that automatically set the deadline of a task in 7 days from today. I already succeed to create a server action that sets today as the deadline date by using the Action Type Write Object and writing the following formula in the deadline field:

time.strftime('%Y-%m-%d %H:%M:%S')

As I am not programmer and do not not any phyton I am struggling to find the formula for today + 7 days


Olivier Dony (odo)

--Olivier Dony (odo)--

| 7 6 7
--Olivier Dony (odo)--


Olivier Dony (odo)
On 9/6/13, 7:45 AM

Based on the standard Python time package, you could use the following formula instead:

time.strftime('%Y-%m-%d %H:%M:%S',time.gmtime(time.time()+7*24*3600))

The time offset of 7 days is provided in seconds as 7*24*3600, so you can adapt it as needed, positive or negative.

Works. Thanks a lot!

Feuerwear GmbH & Co. KG, Robert Klüsener
on 9/6/13, 7:55 AM
Frédéric Gilson (fgi)
On 10/11/13, 12:17 PM

For all the other users, here are the steps to follow in order to automatically set deadlines on Tasks.

  1. From the task kanban or list view, create two advanced filters for each stage: Stage is equal to stage_name, Stage is not equal to stage_name.
  2. In Settings > Technical > Automated Actions, create a new record for all the stages for which you want to set an automatic deadline:
  3. Name: i.e. Set task's deadline to D+7 when stage = New
  4. Model: Task


  • Before Update Filter (pre-condition): retrieve the created filter "Stage is not equal to stage_name" in the list. If you want to add a deadline for the first stage (i.e. New), do not add this pre-condition in the automated action dedicated to the first stage, otherwise it won't work. Further, add "['date_deadline', '=',False]" in its post-condition filter domain in order to avoid an infinite loop. Indeed, without pre-condition, the post-condition would be always valid.

  • After Update Filter (post-condition): retrieve the created filter "Stage is equal to stage_name" in the list.


Create a new action:

  • Object: Task

  • Action type: Write object

Field mapping:

  • Model: Task

  • Destination: Deadline

  • Type: Formula

  • Value: time.strftime('%Y-%m-%d %H:%M:%S',time.gmtime(time.time()+7243600))

You can change the number of allowed days by replacing 7 in the formula (7 days).


About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

3 follower(s)


Asked: 9/6/13, 6:34 AM
Seen: 3758 times
Last updated: 4/24/18, 5:41 PM