Notion rollup no puede consolidar desde otro rollup: por qué
🔍 WiseChecker

Notion rollup no puede consolidar desde otro rollup: por qué

You tried to create a Rollup property in a Notion database that references another Rollup property in a related database, but the Rollup field is grayed out or missing from the source property list. This happens because Notion restricts Rollups to only pull from standard property types, not from other Rollup properties. The technical reason is that Rollups are computed values, not stored data, and chaining them would create circular dependency risks and performance issues. This article explains why this limitation exists, how Notion processes Rollup data, and what alternative methods you can use to achieve the same result.

Puntos clave: restricción de encadenamiento de Rollups en Notion

  • Menú de selección de propiedad Rollup: solo muestra tipos de propiedad estándar (Texto, Número, Selección, Fecha, etc.) y propiedades de Fórmula; las propiedades Rollup quedan excluidas.
  • Relación de base de datos + Rollup: un Rollup solo puede tomar datos de la base de datos relacionada directamente con la base de datos actual, no de una relación de segundo nivel a través de otro Rollup.
  • Propiedad de Fórmula como solución alternativa: usa una propiedad de Fórmula para hacer referencia a un valor de Rollup y luego crea un nuevo Rollup que apunte a la propiedad de Fórmula en lugar del Rollup original.

ADVERTISEMENT

Por qué Notion impide que los Rollups hagan referencia a otros Rollups

Notion almacena las propiedades Rollup como valores calculados que se computan al vuelo cuando visualizas la base de datos. A diferencia de las propiedades de Texto o Número, los Rollups no contienen datos estáticos. En su lugar, agregan información de una base de datos relacionada según una propiedad de relación y una propiedad de destino. Cuando intentas crear un Rollup que apunte a otro Rollup, Notion tendría que resolver el primer Rollup y luego calcular el segundo Rollup a partir de ese resultado. Esto crea una cadena de dependencia que la arquitectura de Notion no admite.

La limitación principal proviene de cómo gestiona Notion las relaciones entre bases de datos. Cada Rollup está vinculado a una propiedad de relación específica. Si tienes la Base de datos A relacionada con la Base de datos B, puedes crear un Rollup en la Base de datos A que tome datos de la Base de datos B. Pero si la Base de datos B tiene a su vez un Rollup que toma datos de la Base de datos C, no puedes crear un Rollup en la Base de datos A que haga referencia a ese segundo Rollup. Notion tendría que recorrer dos saltos de relación y calcular dos Rollups, lo cual no está permitido.

Prevención de dependencias circulares

Otra razón es el riesgo de dependencias circulares. Si la Base de datos A tiene un Rollup que hace referencia a un Rollup de la Base de datos B, y la Base de datos B tiene un Rollup que hace referencia a un Rollup de la Base de datos A, el sistema entraría en un bucle infinito. Notion lo evita limitando las fuentes de Rollup únicamente a propiedades que no sean Rollup.

Rendimiento y actualización de datos

Los Rollups se recalculan cada vez que se carga la base de datos o cambia una propiedad relacionada. Encadenar Rollups multiplicaría el costo de cálculo. En bases de datos grandes con cientos de filas, esto podría provocar una lentitud notable. El diseño de Notion prioriza la capacidad de respuesta sobre la agregación anidada.

Pasos para sortear la restricción de encadenamiento de Rollups

No puedes crear directamente un Rollup que haga referencia a otro Rollup, pero puedes usar una propiedad de Fórmula como intermediaria. Una Fórmula puede generar el valor de un Rollup y luego otro Rollup puede apuntar a esa Fórmula. Así se logra el mismo resultado sin infringir las reglas de Notion.

Método 1: usar una Fórmula como intermediaria

  1. Identifica el Rollup de origen
    Abre la base de datos que contiene el Rollup al que quieres hacer referencia. Anota el nombre exacto de la propiedad Rollup. Para este ejemplo, supongamos que el Rollup se llama “Total Sales” y toma la suma de ventas de una base de datos relacionada.
  2. Agrega una propiedad de Fórmula a la misma base de datos
    Haz clic en el icono + del último encabezado de columna de la base de datos. Selecciona Fórmula en la lista de tipos de propiedad. Asígnale el nombre “Total Sales Formula” o cualquier nombre descriptivo.
  3. Configura la Fórmula para que genere el valor del Rollup
    En el editor de Fórmula, escribe prop("Total Sales") (sustituye “Total Sales” por el nombre de tu Rollup). Esta fórmula simplemente devuelve el valor del Rollup como número o texto. Haz clic en Listo.
  4. Crea el segundo Rollup en la base de datos de destino
    Ve a la base de datos donde quieres el Rollup final. Asegúrate de que tenga una propiedad de relación que la vincule con la base de datos que contiene la Fórmula. Agrega una nueva propiedad Rollup. En la configuración del Rollup, establece la Relación en la relación correcta. En el campo Propiedad, selecciona la propiedad de Fórmula que creaste (“Total Sales Formula”) en lugar del Rollup original. Elige la función de agregación (Suma, Recuento, Promedio, etc.). Haz clic en Listo.

Método 2: simplificar la estructura de datos

  1. Evalúa si un solo Rollup puede ser suficiente
    A menudo puedes rediseñar tus bases de datos para evitar la necesidad de un Rollup de un Rollup. Por ejemplo, si quieres sumar ventas en dos niveles de categorías, crea una relación directa desde la base de datos de nivel superior a la base de datos de nivel inferior.
  2. Agrega una propiedad de relación directa
    En la base de datos de nivel superior, agrega una propiedad de Relación que se vincule directamente con la base de datos de nivel inferior. Así se omite por completo la base de datos intermedia.
  3. Crea un Rollup usando la relación directa
    Agrega una propiedad Rollup que use esta nueva relación. Selecciona la propiedad de destino de la base de datos de nivel inferior. Aplica la función de agregación. Esto produce el mismo resultado sin ningún encadenamiento.

ADVERTISEMENT

Si la solución alternativa sigue sin funcionar

La propiedad de Fórmula muestra “No válido” o está vacía

Si tu propiedad de Fórmula devuelve un error, comprueba que el nombre del Rollup en la función prop() coincida exactamente. Los nombres de propiedades de Notion distinguen entre mayúsculas y minúsculas. Verifica también que el propio Rollup se calcule correctamente. Si el Rollup de origen muestra “Sin datos” o un error, la Fórmula heredará ese problema.

La agregación del Rollup produce valores incorrectos

Cuando usas la Fórmula como intermediaria, la función de agregación del Rollup se aplica a los valores de la Fórmula. Si la Fórmula genera texto como “$100”, una agregación de Suma fallará porque espera números. Asegúrate de que la Fórmula genere un tipo de número. Usa toNumber(prop("Rollup")) si es necesario.

La propiedad de relación no está disponible en la base de datos de destino

Si no puedes crear una relación directa porque las bases de datos ya están vinculadas mediante otras relaciones, considera usar una vista de base de datos vinculada. Crea una vista vinculada de la base de datos de origen dentro de la página de la base de datos de destino y luego usa Rollup en esa vista. Es una solución visual que evita el encadenamiento de propiedades.

Tipos de propiedad de Notion que se pueden consolidar con Rollup y los que no

Tipo de propiedad Puede ser destino de un Rollup Notas
Texto Sí Funciona con Recuento, Mostrar original, Mostrar únicos
Número Sí Funciona con Suma, Promedio, Mín, Máx, Recuento, Mostrar original, Mostrar únicos
Selección / Selección múltiple Sí Funciona con Recuento, Mostrar original, Mostrar únicos
Fecha Sí Funciona con Más antigua, Más reciente, Recuento, Mostrar original, Mostrar únicos
Casilla de verificación Sí Funciona con Recuento, Mostrar original, Mostrar únicos
Fórmula Sí Funciona con todas las funciones de agregación
Rollup No No se puede seleccionar como propiedad de destino
Relación No Los Rollups requieren una relación, pero no pueden apuntar a una propiedad de relación
Fecha de creación / Fecha de última edición Sí Funciona con Más antigua, Más reciente, Recuento, Mostrar original, Mostrar únicos
Creado por / Última edición por Sí Funciona con Recuento, Mostrar original, Mostrar únicos

Esta tabla muestra que Rollup es el único tipo de propiedad calculada que no puede servir como origen de otro Rollup. Las propiedades de Fórmula sí se permiten porque se recalculan de forma independiente y no dependen del contexto de relación de otro Rollup.

Ahora ya entiendes por qué Notion bloquea que los Rollups hagan referencia a otros Rollups y dispones de dos soluciones prácticas: usar una Fórmula como intermediaria o simplificar la estructura de tus bases de datos. Empieza agregando una propiedad de Fórmula a la base de datos que contiene el Rollup original y luego crea tu segundo Rollup apuntando a esa Fórmula. Para modelos de datos complejos, considera rediseñar tus relaciones para usar una sola relación directa en lugar de encadenar varios Rollups. Este enfoque mantiene tus bases de datos rápidas y evita las limitaciones de las propiedades calculadas anidadas.

ADVERTISEMENT