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
indyindy 

How Time base workflow works....Please clarify

Hi All,
Please clarify my question on Time based workflow rules.

I have created a workflow rule on Opportunity with criteria ‘Application_Received_date__c = TODAY – 14’ (Intention is to check if the application was received 14 days ago then after 0 hours , create task and send email notification)

My assumption is that salesforce will check all the Opportunity records every day (without user interaction) and fire the workflow on a particular day that meets the above criteria.

But it is not working as expected. In order to really fire the workflow user has to go to edit a particular opportunity record to meet the criteria.

Please suggest the solution.
Ramu_SFDCRamu_SFDC
Hi Indy,

Salesforce workflows will work in the following way (this applies to both Immediate and timebased)
- When a record is created or edited on a particular object the system in the background checks all workflows that are defined for that particular object
- If a workflow meets the criteria defined on the newly created/modified record, it will then go to actions and fire the immediate actions(Task,Email,field update or outbound message) accordingly. On the other hand if there are any timebased workflow rules, it will put the actions in the queue as per the scheduled defined in the timebased workflow actions. These actions execute automatically without user intervention.

The point to note here is that the workflows will fire ONLY WHEN THE RECORD IS CREATED OR EDITED and the actions will fire automatically (Immediate or Timebased actions)

In your question as the criteria (‘Application_Received_date__c = TODAY – 14’) is set for workflows it will execute ONLY when there are any edit's or record creation events.

Bottom line workflow never execute automatically without any DML events on records. Hope this helps !!
Grazitti TeamGrazitti Team
Hi Indy,

What you really need to do is, Just  "Add time trigger" while creating workflow, and after clicking on "Add time trigger", add the days, "Before/After" and select the field 'Application_Received_date__c' from the dropdown and hit "Save"
User-added image

After saving , specify the "Workflow action" you want to do after 14 Day, Like in your case, you want to send an Email alert.
User-added image

And don't forget to mark this answer as best, if answer this helps you :-)
--
Regards,
Grazitti Team
Web: http://www.grazitti.com
indyindy
Ramu and Grazitti Team - Thank You for your responses.

@Ramu -  So you are telling that a record needs to be edited to trigger the workflow. Take a general scenario that
TODAY = Warranty_Exp_Date__c  (or)  TODAY = Warranty_Exp_Date__c  - 30 ...
This is a common workflow that most of the organizations will setup to remain about the basic warranty expiration.  For this do they really need to go and edit each record. ?

@ Grazitti Team – You are advising me to the time trigger action after 14 days. Could you please let me know what is the rule criteria for my use case.


Thanks,
Indy
Grazitti TeamGrazitti Team
Hi Indy,

In the rule criteria, you can check if "Application_Received_date__c'" is not equal to null. Simple as that

--
Regards,
Grazitti Team
Web: http://www.grazitti.com