Here is the situation. I have a field on an opportunity record (Start_Date__c) that needs to be matched with a field on a child Offer record (Accepted_Date__c).

When I create a formula, I can't access this field to create the IF statement.


IF( Placement__c = TRUE, Offer__r.Accepted_Date__c,

1 Answer 1


Parent to child relationships are one-to-many (1-M) and cannot be referenced in a formula field. Your requirement is not clear as to what should happen when there is more than one Offer for a single Opportunity, but generally, you would use a Rollup Summary to get some aggregate such as earliest (first) or latest (last) date, then use that rolled up value in your formula.

If your relationship from Offer to Opportunity is a Lookup rather than Master-Detail, you will need to implement a custom rollup solution. It is relatively easy to code, and there are hundreds of examples out there. That said, if you are unsure how or just don't want to reinvent the wheel, there are also robust tools which are well known in the industry such as Declarative Lookup Rollup Summary (my preference) and Rollup Helper. I have no affiliation with either and I know the former is free.

Once you have the rollup, the validation rule should look roughly as below. Please note that you can tidy up your formula by dropping = TRUE, which is never necessary to evaluate checkbox fields. Always reduce character count where you can. Also, if you actually tried to put Start_Date__c = in your formula, remove it.

IF(Placement__c, Latest_Offer_Accepted_Date__c, null)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .