Работа с пользовательским вычислительным движком для GridJs

Реализация пользовательского расчетного движка

Aspose.Cells.GridJs имеет мощный вычислительный движок, который может вычислять практически все формулы Microsoft Excel. Несмотря на это, он также позволяет расширить основной вычислительный движок, что обеспечивает большую мощность и гибкость.

Следующие свойства и классы используются при реализации этой функции.

Приведенный ниже код реализует пользовательский расчетный движок. Он реализует интерфейс GridAbstractCalculationEngine, у которого есть метод Calculate(GridCalculationData data). Этот метод вызывается для всех ваших формул. Внутри этого метода мы захватываем формулу MYTESTFUNC и умножаем ее на 2 для значения ее первого параметра.

Пример программирования

class MyCalculation : GridAbstractCalculationEngine
        {
           public override void calculate(GridCalculationData data)
            {
                if (!"MYTESTFUNC".Equals(data.FunctionName.ToUpper()))
                {
                    return;
                }
                data.CalculatedValue = (decimal)(2.0 * (double)data.GetParamValue(0));
            }
        }
// in the startup.cs when you do initialization ,set the CalculateEngine		
  MyCalculation ce = new MyCalculation();
  GridJsWorkbook.CalculateEngine = ce;