Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Добрый день. Кто нибудь настраивал отправку уведомления на почту , о событиях и проблемах с отработкой тасков в QlikSense ?
Добрый день!
Как раз закрываем "долгострой" проект со сбором эксель отчетности из почты и отправкой уведомлений о результатах загрузки на кликСенс. Планировал написать статью но никак руки не доходили.
Если кратко,
использовался MailboxConnector и NotificationConnector из пакета QlikWebConnectors.
В скрипте через загрузку из ссылки, сформированной в интерфейсе коннектора, последовательно грузятся таблицы сообщений, табл. вложений, и загрузка файла.
Результаты загрузки каждого файла записываются в журнал загрузок (qvd, csv).
После окончания цепочки загрузок запускается приложение по отправке уведомлений из журнала. При наличии ошибки отправителю приходит письмо с вложением где строки из журнала ошибок.
С отправкой все намного проще технически. Использовать NotificationConnector. Можно включать вложения, оформлять текст в html.
Проблемы:
Коннектор периодически обновляется и перестает работать изза Breaking changes. Приходилось читать тех.релизы и смотреть что изменилось в параметрах.
Взаимодействие идет через формат URL. (Load * from [\\url] ) Нужно все передаваемые параметры переводить в ASCII. Т.е. символы и кириллицу в 16-ричный код: %20%AC и т.д.
Сложная логика отслеживания ошибок.
Сама отправка работает просто. Пример скрипта:
For Each vSendToSender in FieldValueList('Отправитель')
let vSendToSender = Replace(vSendToSender,'@','%40');
NotificationConnector_SendEmail:
LOAD
status as SendEmail_status,
result as SendEmail_result,
filesattached as SendEmail_filesattached
FROM
[http://localhost:5555/data?connectorID=SMTPConnector&table=SendEmail&SMTPServer=outlook.server.kz&Port=465&SSLmode=None&to=$(vSendToSender)&subject=$(vSubject)&message=$(vMessage)&fromName=finreports%40server.kz&fromEmail=finreports%40server.kz&fileAttachment1=$(vFilePath)&appID=] //&cc=$(vCopyTo)
(qvx);
next vSendToSender;