This formula snippet
ISBLANK(
TEXT([Contact].Request_Portal_User_Account__c == True)
)
is never going to evaluate to true
. The text value of that Boolean expression would always be a non-blank string ("True"
or "False"
), if this even compiles.
Remember that the NOT()
function takes a Boolean, and Checkbox fields are Booleans. You can pass one to the NOT()
function directly.
If we make those substitutions, remove some of your extra parentheses, and add a comma (I don't believe your formula as written will compile), you come out with
AND(
NOT($Setup.Hierarchy_Settings__c.Skip_Process_Builder__c == False),
[Contact].RecordType.DeveloperName == $Label.Contact_Record_Type,
OR(
AND(
ISNEW(),
NOT([Contact].Request_Portal_User_Account__c)
),
AND(
ISCHANGED([Contact].Request_Portal_User_Account__c),
NOT([Contact].Request_Portal_User_Account__c)
)
)
)
That's going to be true if the first two conditions are true, and Request_Portal_User_Account__c
is false
on a new record or is changed to false
on an existing record.