Fórmulas
Los campos de fórmula de Bases calculan valores de registros a partir de datos de tablas. UniverBasesPlugin registra automáticamente su dependencia del motor de fórmulas .
Registrar compatibilidad con fórmulas
TypeScript
import { UniverBasesPlugin } from '@univerjs-pro/bases'import { UniverBasesUIPlugin } from '@univerjs-pro/bases-ui'univer.registerPlugin(UniverBasesPlugin)univer.registerPlugin(UniverBasesUIPlugin)Crear un campo de fórmula
TypeScript
const formulaTableName = table.getFormulaName()const total = table.addField('Total', univerAPI.Enum.BaseFieldType.Formula, { field: { config: { formula: `=SUM(${formulaTableName}[[#This Row],[Price]],${formulaTableName}[[#This Row],[Tax]])`, }, }, externalReferences: [],})externalReferences es obligatorio para cada escritura de campo de fórmula. Use [] solo para fórmulas que hagan referencia a campos de la Base anfitriona. Para fórmulas entre unidades, use buildReference y pase todas las vinculaciones de origen estables en esta matriz.
Notas
- Los campos de fórmula son valores derivados; evite escribir directamente en las celdas de fórmula desde el código de la aplicación.
- Las expresiones de fórmula utilizan referencias de campo estructuradas como
Table[[#This Row],[Price]]. - Recalcule las fórmulas después de importar instantáneas grandes antes de exponer los resultados a los usuarios.
¿Cómo es esta guía?