Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Qlikview server. Как пользователь может узнать об окончании загрузки данных?

Добрый день! Есть проблема. Пользователь открывает приложение через сервер. Нажимает кнопку, на которой есть макрос загрузки данных. При этом на сервере началась загрузка данных, а для пользователя ничего не происходит на экране и он не понимает идет ли загрузка и когда она закончится. Есть ли какие-то свойства на приложении или на сервере, с помощью которых можно показать пользователю окно загрузки данных. Или каким-то другим способом уведомить его что загрузка выполняется?

3 Replies
vlad_komarov
Partner - Specialist III
Partner - Specialist III

Если Вы используете macros - то Вы можете вызвать MsgBox("Загрузка закончена!").

Примеры - здесь: https://community.qlik.com/docs/DOC-9245


Vladimir

Not applicable
Author

Дело в том что, макрос только запускает загрузку. На сервер формируется запрос, который запускает задание с определенным task id. Поэтому сообщение будет выводиться сразу после того, как был получен ответ что задание запущено. Этот вариант уже пробовался.

mrybalko
Creator II
Creator II

Здравствуйте, Татьяна

Нужно в запускаемый qvw файл добавить логику, которая уведомит пользователя об окончании работы. Макрос должен при запуске задачи передавать переменную с именем пользователя (адресом почты), который нажал кнопку. По-моему, API QV сервера позволяет это сделать.

Например, можно в конце скрипта загрузки данных вставить вызов через командную строку почтового клиента (самый простой blat), который сформирует и отправит письмо пользователю.

Еще один вариант - воспользоваться системой уведомлений QV. Открыть файл qvw в QV Desktop. Выбрать Tools - Alerts. Нажать кнопку Add, поставить галочку On Post Reload, поставить галочку Batch, в поле Condition поставить 1 или true(), заполнить поля Message, Mail subject и Mail Recipients.

Более сложный способ - написание web-сервиса, который бы запускал задания, проверял статус выполнения задачи на сервере и уведомлял пользователя.