This question has been flagged
4 Replies
16202 Views

How do you configure the system to email you when an employees contract is going to expire? For example I need to get an email 40 days before. I have tried several things with Actions, Automated Actions, but no messages are sent. Created a test contract and set the expiration date to 2 days from now, then configured an automated action with a server action to run an email message 2 days before ( -2) and nothing. Any ideas?

Avatar
Discard
Best Answer

There are many ways to do that, but the easiest way is to use "super_calendar":

Install this module, go under "Super Calendar" menu, choose "configurator" under "Configuration", and then create a "calendar" as follows: choose "hr.contract" as model and "Contract reference" as description field, give a description (like Employee End of Contract), and last choose "End Date" as "date_start_field_id".
you can if you want fill the others fields.

You can find the module HERE.

Other solution is to use "hr_contract_state" modules from HERE.

Modified Answer: after your comment.

<<You say that you need to get an automatically generated email>>, in this case you should create an "Automated action" (go to settings ---> Technical ---> Automated Actions ).......... The solution you need is described HERE

Avatar
Discard
Author

Thanks. That however does not provide the requirement of email. Let me be more specific. I don't need to see a report, or a calendar. I need to get an automatically generated email. I need to be able to configure the days before the expiration that the email is sent. Because I also want to impliment this for Fleet contracts as well. There are many people saying how easy it is to do this, yet I have seen ZERO instructions, and nothing seems to work.

Author

Thanks. That works.

Author Best Answer

Just for posterity so other can see. Here are the steps to set automatic alerts on any contract.. i.e. HR Employee, or Fleet for example. I will use fleet as an example.

Step 1. As a user who has access rights to Technical Features, go to Settings --> Automated Actions. Create A new Automated Action. For the Related Document Model choose.. Contract information on a vehicle (you can also type in the actual model name.. fleet.vehicle.log.contract ) . Set the trigger date to ... Contract Expiration Date.

The Next Field (Delay After Trigger Date) is a bit ridiculous. Who wants to be reminded of a contract expiration AFTER the fact? The field should say Days Before Date to Fire Action and the number should be converted to a negative. IMHO. Any way... to get a workable solution you must enter in the number in the negative. So for instance like me if you want to be warned 35 days BEFORE the expiration... put in Delay After Trigger Date.. the number -35 But the sake of testing, right now just put in -1 for 1 day before. Save the Action.

Step 2. Go to Server Actions and create new Action. Call it Fleet Contract Expiration Warning. The Object will be the same as above .. Contract information on a vehicle. The Action Type is Email. For email address I just put my email. Under subject put in... [[object.name]]. This will tell you the name of the car. Message you can put any text message you like. Now save the Server Action.

Step 3. Now go back to the Automated Action you created and go to the Action tab next to the conditions tab. Click Add and add the server action you created . In this case Fleet Contract Expiration Warning. Then Save.

Step 4. To test, set a contract to expire tomorrow under one of your fleets vehicles. Then Save it.

Step 5. Go to Scheduled Actions.. Set interval number to 1. Interval Unit to Minutes. Then Set the Next Execution date to 2 minutes from now. If your SMTP is configured correctly you will start to get a mail every minute with the reminder.

Hope this helps someone!

Avatar
Discard

i didnt understand step 5.Where is the menu Scheduled Actions?

Also my SMTP congiguration met with some error.Can you please describe how the incoming and outgoing mails are configured.

Best Answer

Update: This does not work properly. In fact, when the automated action is defined, it will send a message every hour, as the condition will always be true until the contract is updated. So this is not a proper solution for the problem.

 

Hello Mathew,

Thank you for your explanation. It really helps and worked for "on creation" "on update" but did not work for time dependent condition. Further, it is not clear what scheduled action should be changed to one minute for testing.

Thanks for help

Avatar
Discard
Best Answer

You can use this module to notify the employee only https://apps.odoo.com/apps/modules/17.0/employee_contract_reminder/

If you want to notify both employee and hr manager, you can use this module https://apps.odoo.com/apps/modules/17.0/hr_contract_reminder/

Avatar
Discard