Problem
When attempting to save a product configuration in the Solution Console, the following error appears in the browser console:
Configurator Engine experienced an error: Delegate function "storeConfiguration" failed:
Delegate experienced an error: Failed to successfully persist the configuration
The configuration does not save, and users cannot proceed with the basket.
Root Cause
The error occurs because a custom field on the Product Configuration record exceeds its maximum character limit. Salesforce enforces a 255-character limit for text fields, and attempting to save data that exceeds this limit causes the save operation to fail.
In the specific example, the RoomZ__c custom field contained 368 characters, which included duplicate entries:
- RI///0/.15913920?RTS0000 (appeared 3 times)
- RI///0/.15806898?RTS1001(TSG108) (appeared 3 times)
- RI///0/.100281417?RTS0000A (appeared 3 times)
- RI///0/.15860135?RKL0000 (appeared 1 time)
- RI///0/.15790917?RYC0000 (appeared 2 times)
- RI///0/.100282866?RYC0000A (appeared 1 time)
Diagnosis Steps
- Check Browser Console: Open the browser's developer console (F12) and look for errors related to "storeConfiguration" or "Failed to successfully persist the configuration."
- Identify the Field: Review the Product Configuration record in Salesforce to identify which custom field contains excessive data. Look for fields with long text values.
- Count Characters: Copy the field value into a text editor or character counter tool to verify it exceeds 255 characters.
- Check for Duplicates: Review the field value for duplicate entries that may be unnecessarily increasing the character count.
Resolution
- Clean Up the Field Data:
- Remove duplicate entries from the field.
- If the field contains a comma-separated or delimited list, ensure each entry appears only once.
-
Trim the data to ensure it stays within the 255-character limit.
-
Update the Field in Salesforce:
- Navigate to the Product Configuration record.
- Edit the custom field (e.g.,
RoomZ__c) and paste the cleaned-up value. -
Save the record.
-
Re-test in Solution Console:
- Return to the Solution Console and attempt to save the configuration again.
- Verify that the error no longer appears and the configuration saves successfully.
Prevention
To avoid this issue in the future, implement a validation rule on the custom field to prevent data from exceeding the character limit:
- Create a Validation Rule:
- Navigate to Setup > Object Manager > Product Configuration > Validation Rules.
- Click New and create a rule with the following formula:
LEN(RoomZ__c) > 255 -
Set the error message to: "The RoomZ field cannot exceed 255 characters. Please remove duplicates or shorten the value."
-
Review Data Entry Processes:
-
If the field is populated programmatically (e.g., via API, integration, or custom code), update the logic to:
- Remove duplicate entries before saving.
- Truncate or split the data if it exceeds the limit.
-
Consider Increasing Field Length (if applicable):
- If the field legitimately requires more than 255 characters, consider changing the field type to Long Text Area (which supports up to 131,072 characters).
- Note: This requires evaluating the impact on existing integrations, reports, and custom code.
Related Information
- Salesforce enforces a 255-character limit for standard text fields.
- Long Text Area fields can store up to 131,072 characters but have different behavior in formulas and integrations.
- Always validate data length before saving to avoid silent failures or errors.
Priyanka Bhotika
Comments