function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion

Time Based Workflow Email Alert - Help Required

Hi All,


I am trying to set-up a time based workflow, which sends an email alert to a Custom Object record owner, at specificed intervals.


The Custom Object has a field called "End Date" - I need to set-up a reminder email to be sent:


- 1 Year before the "End Date"

- 9 Months before the "End Date"

- 6 Months before the "End Date" and

- 3 Months before the "End Date"


So far, I have created a Workflow Rule which Evaluates when a Custom Object record is created.  The criteron for this is just that the required field "Name", is not equal blank, i.e. it will always fire upon record creation.


It then has 4 Time-Dependent Workflow actions (each one being an Email Alert) associated with it, the crierion for each is:


1) 365 days before "End Date"

2) 270 days before "End Date"

3) 180 days before "End Date"

4) 90 days before "End Date"


The issues I'm having though are:


A)  If I create a record where the End Date is in, for example, 100 days, Time Dependent Workflow actions 1), 2) and 3) (as per above), all fire at once, therefore 3 reminder emails are sent.  I only want it so one email is sent, not all of them.


B)  If the End Date changes on a record, the email alerts won't get sent out as per the updated End Date information, because I have my Workflow rule set-up to evaluate only when a record is created.  However, if I choose to evaluate it "When a record is created, or edited to meet criteria", I don't know what criteria I would use to ensure the workflow rule triggers, based on a change in the End Date.


Has anyone come across this issue before - is there a way in which I can get this to work, ideally without the need for APEX, as I cannot code.


Many thanks,






Hey -


I know it's kind of squirrly, nd I hope there's a better way, but;


1. Create 4 new checkbox fields in your custom object;

    month3fired, month6fired, month9fired, month12fired


2.  Each successive workflow action sees if the previous successive workflow action took place


3.  Each workflow action resets the *next* boolean