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

Workflow not firing

I have a workflow that updates a checkbox on an activity if the WhoId starts with 00Q (lead id) and if the checkbox is false.  It doesn't work when a task is created, but works when I edit and save.  Not sure what I'm missing

Left(WhoId, 3) = "00Q", 
IsLead__c = False)

Any help is greatly appreciated.
1. in which object do you have the workflow rule on?
2. have you selected 'created, and every time it's edited' option?
3. can you try using LastModifiedById instead on WhoId and re-test?
The object that has the workflow is on a task.  I have selected created and everytime it's edited.  I cannot use the lastmodifiedbyId, because I'm trying to update the 'IsLead' checkbox when the Name is a Lead (00Q).  I do not want it checking the box if it is anything other than a lead.
I did a formula on the task to check if it's a lead and then updated the workflow to check the formula field.  
How are you checking if the Tasks you get are for the Leads? Can you also add whoid is not (NOT ISNULL)? 
In general, referring to a polymorphic lookup fields such as WhoId in a formula can cause problems as it can technically point to many entiries. If it was a trigger, you could check sObject Type to surely determine the object type.