So beheben Sie NUMBER_OUTSIDE_VALID_RANGE in Salesforce-Deployments
Ein numerischer Feldwert auf einem zu speichernden Datensatz überschreitet die für dieses Feld definierten Stellen oder Dezimalstellen.
Tritt auf bei: DML zur Laufzeit, bei Datenladevorgängen, Apex-Tests und Formel- oder Rollup-AuswertungWas das bedeutet
NUMBER_OUTSIDE_VALID_RANGE tritt auf, wenn ein in ein Number- oder Currency-Feld geschriebener Wert mehr Stellen oder mehr Dezimalstellen hat, als die Genauigkeit (Precision) und Skalierung (Scale) des Feldes zulassen. Salesforce definiert diese Grenzen am Feld selbst, sodass jeder Wert außerhalb davon beim Speichern abgelehnt wird, unabhängig davon, woher er stammt.
Precision und Scale werden bei der Felderstellung festgelegt und lassen sich später in manchen Editionen bekanntermaßen nur schwer ohne einen Support-Fall erweitern, sodass dieser Fehler oft auf eine Felddefinition hindeutet, die für die Daten, die sie nun aufnehmen muss, zu klein dimensioniert war, nicht nur auf einen einmalig fehlerhaften Wert.
Häufige Ursachen
Die Lösung
- Werte vor dem Laden runden oder kürzenPassen Sie den Migrations- oder Transformationsschritt so an, dass er vor dem Einfügen exakt der Precision und Scale des Zielfeldes entspricht.
Decimal rounded = rawValue.setScale(2, System.RoundingMode.HALF_UP); - Das Feld erweitern, wenn die zusätzliche Genauigkeit berechtigt istErhöhen Sie die Dezimalstellen oder die Stellenanzahl des Feldes in Setup, wenn das Geschäft dieses Detailniveau tatsächlich benötigt.
- Formelausgaben gegen die Felddefinition prüfenStellen Sie sicher, dass keine Formel oder kein Rollup-Summary, das das Feld speist, einen Wert erzeugen kann, der dessen numerische Grenzen überschreitet.
Wie Serpent das verhindert
Die gepoolten Scratch-Orgs von Serpent teilen dieselben Felddefinitionen wie der getestete Branch, sodass ein Migrationsskript, das Werte außerhalb des zulässigen Bereichs erzeugt, in einer isolierten Umgebung schnell fehlschlägt, statt während eines gemeinsam genutzten Sandbox-Ladevorgangs. Siehe die Bibliothek der Salesforce-Deployment-Fehler.

Prävention
Verwandte Fehler
NUMBER_OUTSIDE_VALID_RANGE, beantwortet
Kostenlos starten. Keine Kreditkarte, keine Installation, keine Verpflichtung.
Einrichtung in unter 15 Minuten. Keine DevOps-Einstellung nötig.
