Я использую Qlik Sense Api, и я немного расстроен, так как документы Qlik очень сбивают с толку.
Итак, у меня есть три дела, которые мне нужно сделать.
- Получить текущего авторизованного пользователя.
- Получите список приложений для этого пользователя.
- Есть ли страница, на которой четко перечислены методы, доступные для аргумента (qlik), переданного в функции?
Спасибо
require(['js/qlik'], function (qlik) {
// I need to get the current logged in user from here
// and also a list of apps this user can view
});
Обновлять:
// for getting the user this works like a charm
var global = qlik.getGlobal(config);
global.getAuthenticatedUser(function(reply){
alert('User:'+reply.qReturn);
});
Для получения приложений был предложен следующий код. Я не уверен, чем они отличаются.
// This one is what I have found from trying various code snippets found in the documentation.
// This seems to work but there are errors when displaying the apps with the below code snippet.
qlik.getGlobal(self.config).getAppList(function(list) {console.log(list);});
// suggested snippet gives the following errors.
qlik.getAppList(function(list) {console.log(list);});
Error: "WebSocket connection to 'ws://localhost:8000/app/%3Ftransient%3D?reloadUri=http%3A%2F%2Flocalhost%3A8000%2F' failed: Connection closed before receiving a handshake response"
qlik.getGlobal(self.config).getAppList(function(list) {
ia.getList('sheet', function (reply) {
$('#qlik-cont').append('<div id="div-' + key + '"></div>');
var stop = setInterval(function(){
ia.global.getProgress(ia.model.handle).then(function(progress)
{
console.log("DoReload progress", progress);
});
}, 100);
ia.doReload().then(function(result){
if (result) {
ia.getObject('div-' + key, reply.qInfo.qId);
}
else {
console.log('Reload failed');
}
})
.finally(function(){
clearInterval(stop);
});
});
}
});
Приведенный выше код приводит к следующей ошибке «Недопустимая визуализация. Визуализация не найдена на сервере: лист»
Спасибо