Loading

Los decimales largos se redondean antes de que sus valores se guarden en la IU

Fecha de publicación: Jul 30, 2025
Descripción

Las cadenas decimales largas con más de 13 decimales aproximadamente pueden perder precisión y redondearse al interactuar en el navegador. Los navegadores gestionan esta pérdida de precisión numérica de forma diferente, lo que genera variaciones en el redondeo de los decimales. Esta ocurrencia es una limitación del objeto numérico JavaScript en el navegador web.

Este comportamiento de JavaScript es visible directamente en el navegador, fuera de Salesforce. Por ejemplo, en Chrome:

  1. Diríjase a los tres puntos →Más herramientas → Herramientas de desarrollador. Se abrirá una ventana nueva.
  2. En Consola, escriba 12.3456789012345678 y haga clic en Intro.
  3. La siguiente línea mostrará el número una vez realizado el redondeo de Javascript: 12.345678901234567


Screenshot 2023-06-19 at 4.51.57 PM.png

El mismo redondeo se puede ver en Developer Console al introducir un valor en un campo numérico.

Este comportamiento se debe a la forma en que JavaScript gestiona los números y Salesforce no lo puede controlar. Si introduce cadenas decimales largas mediante la API, es posible que los usuarios que interactúan con estos campos en la interfaz de usuario experimenten un comportamiento de redondeo de Javascript. Si se guarda un registro de este tipo mediante la interfaz de usuario, se introducirá el valor redondeado en la base de datos. Si hay validaciones de Salesforce que requieran que no se cambie el valor de la base de datos, este redondeo se considera un cambio y desencadena la validación.

Los números se pueden almacenar a través de la API con más precisión que el número máximo de decimales permitido para el campo. Para obtener más información, consulte El campo numérico de tipo de datos puede almacenar más decimales de los definidos.

 

 

 

Número del artículo de conocimiento

000394530

 
Cargando
Salesforce Help | Article