I’ve dealt with this exact scenario multiple times. The issue spans all three areas you need to address:
1. Managed Package Namespace Usage (Core Issue):
Managed packages use a namespace prefix (like ‘c2g’) to avoid conflicts. When referencing managed package fields in custom metadata, you should ONLY use the namespace prefix, never the package name. The error shows ‘FinancialForce__c2g__Amount__c’ which is malformed - it combines the package display name with the namespace.
Correct format: c2g__Amount__c Incorrect format: FinancialForce__c2g__Amount__corFinancialForce__Amount__c
2. Dashboard Field References (How to Fix):
Retrieve your dashboard metadata and examine the XML. You’ll see sections like:
<dashboardComponent>
<report>Revenue_Report</report>
<field>FinancialForce__c2g__Amount__c</field>
</dashboardComponent>
Change ALL occurrences to:
<field>c2g__Amount__c</field>
Method 1 - Metadata Fix (Quick):
- Use SFDX: `sfdx force:source:retrieve -m Dashboard:Revenue_Forecast
- Edit the .dashboard-meta.xml file
- Replace all
FinancialForce__c2g__ with `c2g__
- Deploy: `sfdx force:source:deploy -m Dashboard:Revenue_Forecast
Method 2 - Recreate Dashboard (Clean):
In sandbox, recreate the dashboard but manually type field API names instead of using the field picker. When you type ‘c2g__Amount__c’ directly, Salesforce generates correct metadata. This prevents future issues.
3. Metadata Cache Refresh (Critical Step):
Even with correct field references, deployment can fail if production’s metadata cache is stale. This happens when:
- Managed package was recently installed/upgraded
- Custom objects/fields were added that the dashboard references
- Org hasn’t had a full metadata refresh recently
Force Cache Refresh:
Setup > Apex Classes > Compile All Classes
Wait 10-15 minutes for completion. This rebuilds the entire metadata cache including managed package field definitions.
Alternatively, use Anonymous Apex:
System.invalidateCache('metadata');
Complete Solution Steps:
- In production: Run Compile All Classes, wait for completion
- In sandbox: Retrieve dashboard metadata via SFDX
- Edit XML: Change all ‘FinancialForce__c2g__FieldName__c’ to ‘c2g__FieldName__c’
- Validate: Test the edited metadata in sandbox first by redeploying there
- Deploy to production: Use SFDX or updated Change Set
- Verify: Check dashboard loads correctly and all managed package fields display
Why This Happens:
Analytics Studio UI has a bug where selecting managed package fields from the field picker sometimes includes the package display name. This creates invalid metadata that works in the source org (due to loose validation) but fails in target orgs during strict Change Set validation. Always manually type managed package field API names to avoid this.
Prevention:
For future dashboards using managed package fields, establish a naming convention document that lists correct field API names. Train your team to type field names manually rather than using the picker when working with managed packages. This eliminates the metadata malformation at creation time.
This draft is based on general Salesforce knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.