Problem
Funnel Metrics installation failed, and the following "Install Failed" email was sent:
Your request to install package "Full Circle Insights Funnel Metrics Version X.X.X" was unsuccessful. None of the data or setup information in your salesforce.com organization was affected.
If your install continues to fail, contact Salesforce CRM Support through your normal channels and provide the following information.
Organization: xxxxxxxxx (xxxxxxxxx )
User: Full Circle (xxxxxxxxx )
Package: Full Circle Insights Funnel Metrics (xxxxxxxxx )
Problem:
1. (Opportunity.FCR_Campaign_Attribution__c) The formula references fields across 16 relationships while only 15 are allowed. Please contact support at salesforce.com for more assistance.
Opportunity.FCR_Campaign_Attribution__c: The formula references fields across 16 relationships while only 15 are allowed. Please contact support at salesforce.com for more assistance.
Other fields or multiple may appear in the error message. The essential part in identify this error is the error message "The formula references fields across N relationships while only M are allowed"
Customer Impact
Funnel Metrics cannot be installed until this issue is addressed.
Understanding Cross Object Relationships
The following Salesforce help article should prove helpful: https://help.salesforce.com/articleView?id=000315562&language=en_US&type=1&mode=1
Customers may need help understanding where existing cross-object relationships may be occurring. Here's how to go about figuring out the number of existing relationships.
A cross object relationship is where one object refers to another. This can be a lookup to a field (either a lookup field, or a reference the the parent in a master/detail relationship), or it can be a reference to another object inside of a formula or validation field.
Multiple uses of the same object relationship count as a single reference.
Consider for example the following references from a CampaignMember
- FCR_Opportunity__c - direct lookup
- FCR_Opportunity_Amount__c (formula that references FCR_Opportunity__r.amount)
- FCR_Opportunity__c.CreatedBy
- FCR_Opportunity__c.CreatedBy.UserRole (this is not something that normally exists in RM - but one could create it in a formula)
- CreatedBy
How many object references are there?
FCR_Opportunity__c = 1 reference [ CampaignMember→ Opportunity ]
FCR_Opportunity_Amount__c (formula that references FCR_Opportunity__r.amount) = No additional references. It uses the same lookup [ CampaignMember→Opportunity ], so no additional reference there, and the Amount field is not an object, so is not an object reference
FCR_Opportunity__c.CreatedBy = 1 reference [ CampaignMember->Opportunity→User ]. The user object off of the opportunity
FCR_Opportunity__c.CreatedBy.UserRole = 1 reference [ CampaignMember->Opportunity→User->UserRole ]. It's the same Opportunity and User reference as before, but UserRole is an object, so is another object reference
CreatedBy = 1 reference CampaignMember→User. Even though you have referenced a user object before, it was referenced off the opportunity object. This user object is directly off the CampaignMember - so it's a different relationship. i.e. Instead of CampaignMember→Opportunity→User, this one is CampaignMember→User which is a different relationship.
So in this example you have 4 cross object relationships.
You might be wondering - how many object relationships does Funnel Metrics add? The answer is - it can't be answered. It depends on how closely it overlaps the existing object relationships. We might be adding multiple relationships, or one relationship.
Funnel Metrics defines the following relationships
- CampaignMember→Opportunity
- CampaignMember→FCR_Engagement__c
- CampaignMember→User
The sum total of the existing relationships plus the unique relationships added by RM (that is, relationships that don't already exist in the org), must be under the limit.
Possible Solutions for Customer
This standard Salesforce platform limit for cross object relationships is 15 on any given object. This includes formulas that are included as formula fields, within validation rules, and within lookups.
It is rare to hit this limit - as most customers do not add a great deal of functionality to the CampaignMember. However, if they are close to the limit, and the relationships they use do not overlap those defined by RM, it is possible for the limit to be hit. It would be highly usual to see this occur on an update - as we are unlikely to add any new relationships to RM (because of this very issue).
There's documentation about this here on Page 10:
http://resources.docs.salesforce.com/198/14/en-us/sfdc/pdf/salesforce_app_limits_cheatsheet.pdf
And you can reference the help document mentioned earlier: https://help.salesforce.com/articleView?id=000315562&language=en_US&type=1&mode=1
If this error occurs, there are two options you can take:
Customer can request increase in limit from Salesforce
Salesforce will grant up to 20 relationships. See this article for how to request increase.
Customer can audit and remove formulas that are no longer needed
Auditing that is a bit of a pain, since the limit isn't the number of formulas referencing other objects, but the number of unique objects relationships referenced in all formulas on the object. Refer to the section above on "Understanding Cross Object Relationships" for additional information on how to calculate the number of relationships that are in use.
Possible Product Solutions
None. This is not an issue that can be solved by a product feature or fix.
Root Cause Analysis
Although this blocks a successful Funnel Metrics installation and must be solved before progressing, the issue is ultimately outside of our control. The customer needs to be made aware of the issue, and hopefully they will be as enthusiastic about fixing this as we are.
Comments
0 comments
Please sign in to leave a comment.