Tienes una propiedad de fórmula de Notion que necesita extraer datos de otra base de datos, pero el editor de fórmulas solo te permite hacer referencia a propiedades de la base de datos actual. Esta restricción existe porque las fórmulas de Notion operan sobre una sola fila y no pueden consultar directamente otras bases de datos o tablas. Este artículo explica por qué existe esta limitación y ofrece tres soluciones prácticas: usar rollups, relaciones y variables de plantilla.
Puntos clave: soluciones para el acceso entre bases de datos en fórmulas
- Relación + rollup: vincula dos bases de datos con una propiedad de relación y luego usa un rollup para traer el valor de destino a la base de datos de la fórmula.
- Solo propiedad de rollup: si solo necesitas el valor sin transformaciones, usa un rollup directamente en lugar de una fórmula.
- Variables de plantilla: para títulos de página y texto simple, usa la sintaxis
{{variable}}en las plantillas de base de datos para extraer datos de páginas relacionadas.
Por qué una fórmula de Notion no puede hacer referencia a otra base de datos
Las fórmulas de Notion se evalúan por fila en una sola base de datos. El editor de fórmulas muestra una lista de propiedades solo de la base de datos actual. Este diseño mantiene las fórmulas rápidas y predecibles, ya que nunca necesitan consultar otras tablas. La propiedad de fórmula no tiene una función integrada como lookup() o query() que pueda acceder a otra base de datos. Esto no es un error; es una limitación intencional del motor de fórmulas.
Lo que realmente ve el editor de fórmulas
Cuando abres el editor de fórmulas, Notion te muestra un selector de propiedades que enumera todas las propiedades de la base de datos actual. No puedes escribir el nombre de una base de datos ni una ruta de relación. La única forma de traer datos externos a una fórmula es primero traer esos datos a la base de datos actual mediante una relación y una propiedad de rollup. Después, la fórmula puede hacer referencia a la propiedad de rollup.
Por qué existen los rollups para este propósito
Notion creó la propiedad de rollup específicamente para resolver el acceso a datos entre bases de datos. Una propiedad de rollup reside dentro de una base de datos y extrae valores de una base de datos relacionada a través de una relación. Una vez que existe el rollup, puedes usarlo dentro de una fórmula como cualquier otra propiedad. El rollup actúa como puente entre las dos bases de datos.
Solución 1: usar una relación y un rollup
Este es el método más fiable para traer datos de otra base de datos a una fórmula. Creas una propiedad de relación que vincula las dos bases de datos y luego creas una propiedad de rollup que extrae el valor específico que necesitas. Después, la fórmula puede hacer referencia al rollup.
- Abre la base de datos donde está la fórmula
Ve a la base de datos que contiene la propiedad de fórmula. Esta es tu base de datos actual. - Agrega una propiedad de relación
Haz clic en el botón + del encabezado de la tabla o abre Database Properties (Propiedades de la base de datos). Selecciona Relation (Relación). Elige la base de datos de destino de la que quieres extraer datos. Ponle a la relación un nombre claro, como “Tareas relacionadas” o “Proyecto vinculado”. - Vincula las filas
En cada fila de tu base de datos actual, haz clic en la celda de relación y selecciona la fila relacionada de la base de datos de destino. Cada fila que necesite la fórmula debe tener una relación establecida. - Agrega una propiedad de rollup
Haz clic de nuevo en el botón + y selecciona Rollup. Ponle un nombre como “Presupuesto del proyecto” o “Correo del cliente”. En la configuración del rollup, establece Relation (Relación) en la que acabas de crear. Establece Property (Propiedad) en el campo exacto que quieres extraer de la otra base de datos. Establece la opción Calculate (Calcular) en Show Original (Mostrar original) o en la agregación que necesites (Sum, Average, etc.). - Haz referencia al rollup en tu fórmula
Abre el editor de la propiedad de fórmula. Ahora verás la propiedad de rollup en el selector de propiedades. Úsala como cualquier otra propiedad. Por ejemplo:prop("Project Budget") 1.1para agregar un margen del 10 %.
Solución 2: usar un rollup directamente sin fórmula
Si solo necesitas mostrar un valor de otra base de datos sin realizar cálculos, una propiedad de rollup por sí sola puede ser suficiente. No necesitas envolverla en una fórmula. Esto reduce la complejidad y evita errores de fórmula.
- Agrega una propiedad de relación a la base de datos actual
Igual que en la solución 1, crea una relación con la base de datos de destino y vincula las filas. - Agrega una propiedad de rollup
Crea una propiedad de rollup. Selecciona la relación. Selecciona la propiedad que quieres mostrar. Elige Show Original (Mostrar original). - Usa el rollup en vistas y filtros
El valor del rollup aparece en las celdas de la tabla, en las tarjetas kanban y en las vistas de galería. También puedes filtrar y ordenar por la propiedad de rollup.
Solución 3: usar variables de plantilla
Las variables de plantilla funcionan dentro de las plantillas de base de datos. Te permiten extraer el valor de una propiedad de una página relacionada al título o al cuerpo del texto de la página. Esto no es una fórmula, pero resuelve el mismo problema para campos basados en texto.
- Crea una propiedad de relación
Agrega una relación a la base de datos que contiene los datos a los que quieres hacer referencia. - Abre la plantilla de la base de datos
Ve a la base de datos actual, haz clic en el menú … de la esquina superior derecha, selecciona Templates (Plantillas) y abre la plantilla que usas para las páginas nuevas. - Inserta una variable de plantilla
Escribe{{relation property name}}donde quieras que aparezca el valor. Por ejemplo, si tu relación se llama “Cliente” y la base de datos de clientes tiene una propiedad llamada “Nombre de la empresa”, escribe{{Client.Company Name}}. Notion lo reemplazará con el valor real cuando crees una página nueva. - Crea una página nueva para probar
Agrega una página nueva a la base de datos. Establece la relación. La variable de plantilla se rellenará con los datos relacionados.
Errores comunes al usar rollups en fórmulas
El rollup devuelve una matriz en lugar de un solo valor
Si la relación vincula varias filas, el rollup puede devolver una lista. Las fórmulas no pueden procesar listas directamente. Para solucionarlo, cambia la opción Calculate (Calcular) del rollup a Sum, Average, Count u otra agregación que devuelva un solo número. Para texto, usa Show Original (Mostrar original) solo si la relación vincula una sola fila.
La fórmula muestra “NaN” o “Undefined”
Esto ocurre cuando el valor del rollup está vacío o la relación no está establecida. Comprueba que cada fila tenga un valor de relación. Usa una instrucción if() en la fórmula para manejar valores vacíos: if(empty(prop("Rollup Name")), 0, prop("Rollup Name") 1.1).
La propiedad de rollup no aparece en el editor de fórmulas
Las fórmulas de Notion solo muestran propiedades de la base de datos actual. Asegúrate de que la propiedad de rollup esté en la misma base de datos que la fórmula. Si creaste el rollup en otra base de datos, no aparecerá. El rollup debe ser una propiedad de la misma base de datos en la que estás escribiendo la fórmula.
| Método | Caso de uso | Limitación |
|---|---|---|
| Relación + rollup | Traer un valor a una fórmula para realizar cálculos | Requiere un vínculo de relación por fila |
| Solo rollup | Mostrar un valor sin cálculos | No puede transformar el valor |
| Variables de plantilla | Insertar texto relacionado en títulos o cuerpo de página | Solo funciona al crear la página, no de forma dinámica |
Ahora tienes tres formas de traer datos de otra base de datos a tu fórmula o página de Notion. El método de relación y rollup es el más flexible para fórmulas que necesitan realizar operaciones matemáticas o transformaciones de texto. Si solo necesitas mostrar un valor, usa una propiedad de rollup por sí sola. Para plantillas de página, usa variables de plantilla. Prueba a usar la función formatDate() dentro de tu fórmula para mostrar la fecha del rollup en un formato personalizado.