Skip to main content

4 posts tagged with "Record Types"

Deploying and migrating Salesforce record types

View All Tags

Can You Delete a Record Type Through the Metadata API? (And What to Do Instead)

· 5 min read
Alina Hubaidullina
Salesforce Consultant

You want to retire a record type, so you add it to a destructive deployment — and Salesforce throws it right back at you. Record types are one of the few components the Metadata API refuses to delete: put one in destructiveChanges and Salesforce hard-rejects it with Cannot delete record type through API, every time. The supported path instead is to deactivate it — deploy it with <active>false</active> — then delete it manually in Setup once no records reference it.

Deploying Workflows That Reference Person Account Record Types in Salesforce

· 5 min read
Alina Hubaidullina
Salesforce Consultant

Take a workflow that references a Person Account record type and move it to another org. Sometimes it deploys cleanly; sometimes Salesforce rejects it outright. The deciding factor is how the workflow uses the record type: a rule's entry criteria that filter on the record type deploy without issue, while a field update that tries to set the record type is rejected by Salesforce itself, regardless of the tool you deploy with.

Fix 'Record Type ID Isn't Valid for User' When Migrating Records Between Salesforce Orgs

· 5 min read
Alina Hubaidullina
Salesforce Consultant

You migrate records — accounts, cases, CPQ configuration — from one org to another, and Salesforce throws back every row with the same error:

INVALID_CROSS_REFERENCE_KEY: Record Type ID: this ID value isn't valid for the user: 012d2000009YkJOAA0

The records were fine in the source. Their record type IDs are the problem, for one of two reasons: the ID is org-specific and doesn't exist in the target, or the target record type exists but isn't assigned to the user running the migration. The fix is to remap each record's RecordTypeId to the target org's equivalent by Developer Name, and make sure the loading user has that record type assigned — mtdt.io does the remapping automatically and flags any assignment you still need to grant.

Deploy Salesforce Record Types Without 'Picklist Value Not Found'

· 5 min read
Alina Hubaidullina
Salesforce Consultant

You add a record type to a deployment, ship it, and Salesforce stops you cold:

Global value set 'Tier__c' in record type 'Partner' on the entity 'Account' cannot be resolved

or the one everyone ends up searching for:

Picklist value: Archived in picklist: RT_Status__c not found

The record type deployed fine in your source org. In the target, it can't find a picklist field — or a value — it relies on.