Loading

Error de cálculo de presupuesto de CPQ "no se puede obtener acceso exclusivo a este registro o 1 registros"

Fecha de publicación: Sep 27, 2025
Descripción
Un cálculo de presupuesto asíncrono está fallando con el mensaje de error: "no se puede obtener acceso exclusivo a este registro o 1 registros: <Id. de presupuesto>" donde <Id. de presupuesto> es el identificador del registro Presupuesto donde se produce el fallo.
Solución
El mensaje de error "no se puede obtener acceso exclusivo a este registro o 1 registros:" indica que un proceso estaba intentando obtener un bloqueo sobre un registro durante 10 segundos antes de salir del proceso con un mensaje de error que indica que el registro no está disponible. Si un proceso de larga ejecución o demasiados procesos de corta ejecución están intentando interactuar con un registro al mismo tiempo, esto puede provocar que se produzca el error de acceso exclusivo.

La causa más común de este mensaje de error cuando aparece en Salesforce CPQ es cuando hay cálculos múltiples en un único presupuesto en cola desde una única transacción. Estos cálculos tardan aproximadamente la misma cantidad de tiempo en procesarse en el servicio Heroku. Como resultado intentarán escribir de vuelta en el registro Presupuesto al mismo tiempo. Esto crea el potencial de que uno o más de los procesos impidan el bloqueo del presupuesto para un intento de actualización.

Cuando se aparezca este mensaje de error, los administradores deben examinar las siguientes áreas para determinar si es posible reducir inserciones o actualizaciones que se produzcan en el objeto Presupuesto o Partida de presupuesto. Cualquier reducción en las actualizaciones dará como resultado en la ejecución reducida de procesos de cálculo. Por lo tanto, habrá menos posibilidades de que aparezca el mensaje de error.
  • Clases/Desencadenadores de Apex personalizados - Cualquier instrucción DML sobre una Partida de presupuesto provocará que se ponga un nuevo cálculo en cola. Cualquier instrucción DML sobre un Presupuesto en el que uno de los campos de cálculo se haya alterado provocará que se ponga un nuevo cálculo en cola. Examine los registros de depuración si hay múltiples instrucciones DML sobre esos objetos produciéndose en código de Apex personalizado. Intente cambiar la lógica para utilizar un único DML siempre que sea posible.
  • Reglas de flujos de trabajo y generadores de procesos - Cualquier actualización de campos sobre los campos de cálculo de presupuesto o CUALQUIER campo en Partida de presupuesto provocará que se coloque un cálculo en cola. El uso del parámetro "Recursión" en generadores de procesos o el parámetro "Volver a evaluar reglas de flujo de trabajo después de cambio de campo" en Reglas de flujos de trabajo también pueden estar provocando actualizaciones adicionales de campos que llevan a cálculos extra. Debido al riesgo de errores de bloqueo de registros y otros límites de Apex, se recomienda utilizar Reglas de flujos de trabajo y generadores de procesos en los objetos Presupuesto y Partida de presupuesto.
  • Paquetes gestionados no CPQ - De forma parecida a Apex personalizado, un paquete gestionado no CPQ puede incluir lógica que desencadene DML/reglas de flujos de trabajo/generadores de procesos/etc. adicionales en objetos CPQ que provoquen que se produzcan cálculos adicionales. Analice los registros de depuración para ver dónde se están produciendo las instrucciones DML. Incluso si los registros están ocultos para el paquete gestionado, las instrucciones DML se incluirán en los registros.
Número del artículo de conocimiento

000380651

 
Cargando
Salesforce Help | Article