getXMLACubes(proxyURL: String, dataSourceInfo: String, catalog: String, callbackHandler: Function, username: String, password: String)
[starting from version: 1.5]
One of four API calls of OLAP/XMLA connectivity diagnostics.
Obtains a list of all available cubes on a given data source by proxyURL
, dataSourceInfo
and catalog
. Returns an Array of cube names.
Note that getXMLACubes
has an async equivalent — getXMLACubesAsync.
OLAP/XMLA connectivity step by step. First, getXMLADataSources()
obtains a list of all data sources by given URL (for example: 'https://olap.flexmonster.com/olap/msmdpump.dll'
) and getXMLAProviderName()
returns type
. Second, getXMLACatalogs()
gets all available catalogs for the first data source from the list of available data sources. Then getXMLACubes()
obtains a list of all cubes for the first catalog of the list of available catalogs. Finally, connectTo()
uses all the information about data source to connect to it:
var proxyUrl = 'https://olap.flexmonster.com/olap/msmdpump.dll';
var dataSourceInfo = '';
var type = '';
var catalog = '';
var cube = '';
function diagnostic() {
getDataSources();
}
function getDataSources() {
pivot.getXMLADataSources(proxyUrl, onDataSourceLoaded);
}
function onDataSourceLoaded(result) {
dataSourceInfo = result[0];
type = pivot.getXMLAProviderName(proxyUrl);
pivot.getXMLACatalogs(proxyUrl, dataSourceInfo, onCatalogsLoaded);
}
function onCatalogsLoaded(result) {
catalog = result[0];
pivot.getXMLACubes(proxyUrl, dataSourceInfo, catalog, onCubesLoaded);
}
function onCubesLoaded(result) {
cube = result[0];
pivot.connectTo({
type: type,
proxyUrl: proxyUrl,
dataSourceInfo: dataSourceInfo,
catalog: catalog,
cube: cube
});
}
diagnostic();
Check out on JSFiddle.
getXMLACubesAsync
getXMLADataSources
getXMLAProviderName
getXMLACatalogs