我是saiku和骨干的新手。我试图弄清楚 ChartPlus highcharts 如何在 Saiku 中工作并将 Saiku 集成到 Pentaho 中。我已经下载了源代码,浏览了代码并试图弄清楚数据库是如何被命中来生成图表的。我找到了以下用于获取查询的事件,但无法找到它的定义位置以及它是如何被调用的。
this.workspace.trigger('query:fetch');
任何人都可以通过告诉它是如何工作的来帮忙吗?
我是saiku和骨干的新手。我试图弄清楚 ChartPlus highcharts 如何在 Saiku 中工作并将 Saiku 集成到 Pentaho 中。我已经下载了源代码,浏览了代码并试图弄清楚数据库是如何被命中来生成图表的。我找到了以下用于获取查询的事件,但无法找到它的定义位置以及它是如何被调用的。
this.workspace.trigger('query:fetch');
任何人都可以通过告诉它是如何工作的来帮忙吗?
您可以使用 Pentaho Marketplace 安装 Saiku CE 和 Saiku Chart Plus,或者您可以构建 Saiku 源并将其放入pentaho-solutions的文件夹中并重新启动服务器。
您所说的代码,您可以在此处看到创建的事件: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);
},
});