GridAbstractCalculationEngine

GridAbstractCalculationEngine class

Rappresenta il motore di calcolo personalizzato dell’utente per estendere il motore di calcolo predefinito di Aspose.Cells.

public abstract class GridAbstractCalculationEngine

Metodi

NomeDescrizione
abstract Calculate(GridCalculationData)Calcola una funzione con dati dati.

Osservazioni

L’utente non deve modificare alcuna parte della cartella di lavoro direttamente in questa implementazione (tranne il risultato calcolato della funzione personalizzata, che può essere impostato dalla proprietà GridCalculationData.CalculatedValue). In caso contrario potrebbero verificarsi risultati imprevisti o eccezioni. Se l’utente deve modificare dati diversi da quelli calcolati risultano nell’implementazione per alcune funzioni personalizzate, ad esempio , modifica la formula della cella, lo stile, ecc., l’utente dovrebbe raccogliere quei dati in questa implementazione e cambiarli fuori dall’ambito del calcolo della formula.

Esempi

[C#]
public class MyEngine : GridAbstractCalculationEngine
{
    public override void Calculate(GridCalculationData data)
    {
        string funcName = data.FunctionName.ToUpper();
        if ("MYFUNC".Equals(funcName))
        {
            //esegui il calcolo per MYFUNC qui
            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);
                }
                //elabora il parametro qui
                //risp = ...;
            }
            data.CalculatedValue = res;
        }
    }
}

Guarda anche