Red de conocimiento informático - Conocimiento informático - Cómo completar la configuración de indicadores de cálculo a través de plataformas duales

Cómo completar la configuración de indicadores de cálculo a través de plataformas duales

A través de las simples operaciones anteriores, puede completar la configuración del indicador de cálculo en función de las cuatro operaciones.

Además de las funciones anteriores, BIPlatform también admite una configuración rápida en anillo y soporte de configuración de funciones definidas por el usuario.

Acerca de la configuración del anillo rápido, es similar a la configuración de los indicadores de cálculo ordinarios. A continuación, nos centraremos en cómo admitir funciones definidas por el usuario:

/* * Escriba una clase de función personalizada, por ejemplo, esta función implementa principalmente la suma de dos números*/

La clase pública UserDefFunction2 extiende FunctionNode {

/**

? *?

? */

privado estático final largo serialVersionUID =-2557343941040637669 l;

public UserDefFunction2 () {

}

?

/* *Método abstracto, que debe implementarse para identificar nombres de funciones definidas por el usuario*/

@Override

Cadena pública getName () {

p>

Devuelve "UDF 2";

}

/* *Puedes consultar esta implementación. Este método se utiliza principalmente para establecer parámetros en grupos durante el cálculo por lotes para mejorar el rendimiento del cálculo*/

@cover

public map& lt condition, set & ltstring& gt& gtmergeCondition(node ​​node) {

Return node .collectvariablecondition();

}

/* *Implementación de la lógica informática, la lógica de cálculo específica de la función se puede implementar de acuerdo con la función. características* /

@Override

El resultado de la computadora pública getResult(Contexto CompileContext) arroja IllegalCompileContextException {

Node args = getArgs(). get(0);

Nodo args2 = getArgs(). get(1);

SingleComputeResult RS =(SingleComputeResult)args . obtener resultado(contexto);

SingleComputeResult RS 1 =(SingleComputeResult)args 2 . /p>

Devuelve el nuevo resultado de una sola computadora(RS . get data(). add(RS 1 . get data());

}

/* *En Must se ejecutará antes del cálculo para verificar los argumentos */

@override

public int getArgsLength() {

return 2;

}

?

}

Inyecta la función en el contexto de ejecución al iniciar el programa:

registrar función. , userdeffunction 2. class);

Utilice la expresión: udf(${m3}, 1) para configurar el miembro de cálculo para implementar el cálculo de ${m3}+1

.