Hoe je STRING_TOO_LONG in Salesforce-deployments oplost
Een waarde die naar een tekst-, picklist- of e-mailveld wordt geschreven overschrijdt de maximale lengte die voor dat veld is gedefinieerd.
Treedt op bij: runtime DML, bij data loads, Apex-tests, en Flow- of Apex-stringlogicaWat het betekent
STRING_TOO_LONG betekent dat een record-insert of -update probeert meer tekens in een veld te schrijven dan de metadata ervan toestaat. Standaard tekstvelden, picklists en e-mailvelden hebben allemaal een gedefinieerde maximale lengte, en Salesforce handhaaft dit strikt: afkappen gebeurt nooit stilzwijgend.
Standaard Text-velden hebben een limiet van maximaal 255 tekens; alles langer heeft in plaats daarvan een Long Text Area- of Rich Text-veld nodig, wat verklaart waarom deze fout vaak een signaal is dat een veld gewoon het verkeerde type was voor de inhoud die het nu moet bevatten.
Veelvoorkomende oorzaken
De oplossing
- Verhoog de veldlengte als de business case dat rechtvaardigtVerhoog de maximale lengte van het veld in metadata als de langere waarden legitiem zijn en het veldtype dit toestaat.
- Valideer op het punt van invoerVoeg een Flow- of Apex-beveiliging toe die te grote waarden inkort of weigert voordat ze de DML-operatie bereiken.
String safeValue = rawValue.length() > 255 ? rawValue.left(255) : rawValue; - Controleer gemigreerde data tegen het doelschemaVergelijk de lengtes van brondata met de limieten van doelvelden vóór een migratie, niet nadat de load faalt.
Hoe Serpent dit voorkomt
De CI-pipelines van Serpent voeren een veldlengtevalidatie uit voordat een data load een gedeelde org bereikt, zodat een te grote waarde snel faalt in een pipelinestap in plaats van halverwege een deployment. Zie de bibliotheek met Salesforce-deploymentfouten.

Preventie
Gerelateerde fouten
STRING_TOO_LONG, beantwoord
Start gratis. Geen creditcard, geen installatie, geen verplichting.
Binnen 15 minuten ingericht. Geen DevOps-medewerker nodig.
