标签:
先睹为快,我们先来看一下如何进行简单的基于四则运算的简单计算指标配置。
访问BIPlatform设计器,进入如下页面:

配置完成之后,点击提交完成配置,之后就可以正常使用你配置的计算指标了。

通过上述简单操作,你就可以完成基于四则运算的计算指标配置。
除上述功能之外,BIPlatform还支持快速同环比的配置,自定义函数配置支持。
关于快速同环比配置,和配置普通计算指标类似,接下来着重讲一下如何支持自定义函数:
/** 编写自定义函数功能类,如:本函数主要实现两个数的加和*/
public class UserDefFunction2 extends FunctionNode {
/**
*
*/
private static final long serialVersionUID = -2557343941040637669L;
public UserDefFunction2 () {
}
/** 抽象方法,必须实现,用于标识自定义函数名*/
@Override
public String getName () {
return "udf2";
}
/**可参考此实现,此方法主要用于批量计算时,对参数进行分组设置,以便提高计算性能*/
@Override
public Map<Condition, Set<String>> mergeCondition(Node node) {
return node.collectVariableCondition ();
}
/** 计算逻辑实现,可以根据函数特性,实现函数具体计算逻辑 */
@Override
public ComputeResult getResult(CompileContext context) throws IllegalCompileContextException {
Node args = getArgs ().get (0);
Node args2 = getArgs().get (1);
SingleComputeResult rs = (SingleComputeResult) args.getResult (context);
SingleComputeResult rs1 = (SingleComputeResult) args2.getResult (context);
return new SingleComputeResult (rs.getData ().add (rs1.getData ()));
}
/**必须实现,用于在计算之前对参数进行校验*/
@Override
public int getArgsLength() {
return 2;
}
}在启动程序时,将函数注入执行上下文:
RegisterFunction.register ("udf2", UserDefFunction2.class);配置计算成员,表达式为:udf(${m3}, 1) 即可实现${m3} + 1的计算标签:
原文地址:http://my.oschina.net/biplatform/blog/425643