如何通过BIPlatform完成计算指标的配置

原创
2015/06/06 12:12
阅读数 6.7K

先睹为快,我们先来看一下如何进行简单的基于四则运算的简单计算指标配置。

访问BIPlatform设计器,进入如下页面:

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

通过上述简单操作,你就可以完成基于四则运算的计算指标配置。

除上述功能之外,BIPlatform还支持快速同环比的配置,自定义函数配置支持。

关于快速同环比配置,和配置普通计算指标类似,接下来着重讲一下如何支持自定义函数:

  1. /** 编写自定义函数功能类,如:本函数主要实现两个数的加和*/
    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;
            }
            
        }
  2. 在启动程序时,将函数注入执行上下文:
    RegisterFunction.register ("udf2", UserDefFunction2.class);
  3. 配置计算成员,表达式为:udf(${m3}, 1) 即可实现${m3} + 1的计算
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
2 收藏
2
分享
返回顶部
顶部