码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-06-06 13:39:10      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

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

访问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的计算

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

标签:

原文地址:http://my.oschina.net/biplatform/blog/425643

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!