我是saiku和骨干的新手。我试图弄清楚ChartPlus highcharts如何在Saiku中运作并在Pentaho中集成了Saiku。我已经下载了源代码,一直在浏览代码并试图弄清楚数据库是如何被命中以生成图表的。我找到了以下事件来获取查询但无法找到它的定义位置以及如何调用它。
this.workspace.trigger('query:fetch');
任何人都可以告诉我们这是如何运作的吗?
答案 0 :(得分:1)
您可以使用Pentaho Marketplace安装Saiku CE和Saiku Chart Plus,或者您可以在 pentaho-solutions 中构建Saiku源并放入文件夹并重新启动服务器。
您发言的代码,您可以在此处看到创建的事件:https://github.com/OSBI/saiku/blob/master/saiku-ui/js/saiku/models/Query.js#L135
触发给定事件或空格分隔列表的回调 事件。触发器的后续参数将传递给 事件回调。
您可以使用以下方式捕获它:
var MyClass = Backbone.View.extend({
initialize: function(args) {
// Keep track of parent workspace
this.workspace = args.workspace;
// Maintain `this` in callbacks
_.bindAll(this, 'receive_data', 'workspace_levels');
// Listen to result event
this.workspace.bind('query:fetch', this.receive_data);
},
receive_data: function(args) {
console.log(args);
},
});