Advanced Formula Engine

GitHubEdit on GitHub
Preset Info
@univerjs/preset-sheets-advanced
Server Required
No

The Advanced Formula Engine optimizes the original formula engine, providing improved calculation performance and richer functionality. It supports a variety of complex formula calculations, can handle large datasets, and offers better error handling and debugging capabilities.

Preset Mode

The Advanced Formula Engine is included in the @univerjs/preset-sheets-advanced preset.

Installation

The UniverSheetsAdvancedPreset preset from @univerjs/preset-sheets-advanced depends on the UniverSheetsDrawingPreset preset at runtime. Please install @univerjs/preset-sheets-drawing first.

npm install @univerjs/preset-sheets-drawing @univerjs/preset-sheets-advanced

Usage

import { UniverSheetsAdvancedPreset } from '@univerjs/preset-sheets-advanced'
import UniverPresetSheetsAdvancedEnUS from '@univerjs/preset-sheets-advanced/locales/en-US'
import { UniverSheetsCorePreset } from '@univerjs/preset-sheets-core'
import UniverPresetSheetsCoreEnUS from '@univerjs/preset-sheets-core/locales/en-US'
import { UniverSheetsDrawingPreset } from '@univerjs/preset-sheets-drawing'
import UniverPresetSheetsDrawingEnUS from '@univerjs/preset-sheets-drawing/locales/en-US'
import { createUniver, LocaleType, merge } from '@univerjs/presets'

import '@univerjs/preset-sheets-core/lib/index.css'
import '@univerjs/preset-sheets-drawing/lib/index.css'
import '@univerjs/preset-sheets-advanced/lib/index.css'

const { univerAPI } = createUniver({
  locale: LocaleType.En_US,
  locales: {
    [LocaleType.En_US]: merge(
      {},
      UniverPresetSheetsCoreEnUS,
      UniverPresetSheetsDrawingEnUS, 
      UniverPresetSheetsAdvancedEnUS, 
    ),
  },
  presets: [
    UniverSheetsCorePreset(),
    UniverSheetsDrawingPreset(), 
    UniverSheetsAdvancedPreset(), 
  ],
})

If you have a commercial license for Univer, please refer to Using License in Client for configuration.

Plugin Mode

Installation

npm install @univerjs-pro/engine-formula

Usage

By using the Advanced Formula Engine, you need to replace the original UniverFormulaEnginePlugin with UniverProFormulaEnginePlugin.

import { UniverProFormulaEnginePlugin } from '@univerjs-pro/engine-formula'
import { UniverFormulaEnginePlugin } from '@univerjs/engine-formula'

univer.registerPlugin(UniverFormulaEnginePlugin) 
univer.registerPlugin(UniverProFormulaEnginePlugin) 

If you have a commercial license for Univer, please refer to Using License in Client for configuration.