GridAbstractCalculationEngine

GridAbstractCalculationEngine class

Representa el motor de cálculo personalizado del usuario para ampliar el motor de cálculo predeterminado de Aspose.Cells.

public abstract class GridAbstractCalculationEngine

Métodos

NombreDescripción
abstract Calculate(GridCalculationData)Calcula una función con los datos dados.

Observaciones

El usuario no debe modificar ninguna parte del Libro de trabajo directamente en esta implementación (excepto el resultado calculado de la función personalizada, que puede configurarse mediante la propiedad GridCalculationData.CalculatedValue). otros datos que no sean el resultado calculado en la implementación de algunas funciones personalizadas, por ejemplo, cambiar la fórmula de la celda, el estilo, etc., el usuario debe recopilar esos datos en esta implementación y cambiarlos fuera del alcance del cálculo de la fórmula.

Ejemplos

[C#]
public class MyEngine : GridAbstractCalculationEngine
{
    public override void Calculate(GridCalculationData data)
    {
        string funcName = data.FunctionName.ToUpper();
        if ("MYFUNC".Equals(funcName))
        {
            //hacer calculo para MYFUNC aqui
            int count = data.ParamCount;
            object res = null;
            for (int i = 0; i < count; i++)
            {
                object pv = data.GetParamValue(i);
                if (pv is ReferredArea)
                {
                    ReferredArea ra = (ReferredArea)pv;
                    pv = ra.GetValue(0, 0);
                }
                //procesar el parámetro aquí
                // res = ...;
            }
            data.CalculatedValue = res;
        }
    }
}

Ver también