Qlik Sense SaaSを使用していて、メジャー(軸に基づいた集計)の結果と事前に設定した閾値を比較して、閾値を超えたら通知を飛ばせたら良いな、と考えたことはありませんか?
本記事では、Qlik Sense SaaSの「Qlik Application Automation」にあるテンプレートを使用して、Microsoft Teamsにメッセージを配信する方法を紹介します。
-
※Microsoft Teamsとは
Microsoft社がビジネス向けに提供する、コミュニケーションを取るためのオンラインツールです。ビデオを使用したオンラインミーティングや、テキストメッセージを使用したチャットルーム(チーム)でのコミュニケーションが可能です。今回はそのチャットルーム(チーム)に、Qlik Sense SaaSからメッセージを配信する方法を紹介します。
目次
※本記事は「2024年03月時点のSaaS」で作成しています。
「Qlik Application Automation」について
Qlik Sense SaaSには「Qlik Application Automation」という機能があります。この機能を使うと、GUIの直感的な操作で様々な処理を組み合わせて、作業を自動で行うことができます。たとえば、あるアプリのデータ更新完了をトリガーにして、別のアプリのデータ更新を自動で実行したり、Qlik Sense SaaSで作成したデータを毎日CSVファイルとして自動で配信したり、組み合わせ次第で様々な作業が自動化できます。さらに、作業を自動化する際に役立つ、処理の組み合わせのテンプレートも豊富に揃っています。
以下の記事で「Qlik Application Automation」について詳しく紹介していますので是非ご覧ください!
はじめてのQlik Application Automation
メッセージ配信の処理概要
アプリのメジャーの結果が閾値を超えた場合にMicrosoft Teamsにメッセージを配信する例として、「月の売上が目標値を超えた場合にメッセージを配信する」という処理を実装してみましょう!
事前準備
「Qlik Application Automation」で設定する閾値の比較対象となるメジャーは、あらかじめQlik Sense SaaSのアプリ上で、マスター アイテムとして作成しておく必要があります。
マスター アイテムのメジャーは、以下の二つの方法のいずれかで作成できます。
a.作成済みのチャートのメジャーをマスター アイテムに追加する
b.マスター アイテムのメジャーを新規で作成する
作成手順をそれぞれ説明します。
a.作成済みのチャートのメジャーをマスター アイテムに追加する
a-1.シートの編集画面で目的のチャートを1度クリックし、マスター アイテムに追加したいメジャーのプロパティを展開します。
a-2.展開したプロパティよりマスター アイテムの[新規追加]をクリックします。
a-3.マスター アイテムのメジャーの新規作成画面に遷移するため、[作成]をクリックします。
-
※[名前]にはデフォルトで元のメジャーの名前が設定されています。任意で変更可能なため、今回はマスター アイテムのメジャーの用途がわかりやすいように「売上集計」に変更します。
b.マスター アイテムのメジャーを新規で作成する
b-1.シートの編集画面で、画面左側の[アセット]から、[マスター アイテム]-
[メジャー]-[新規作成]をクリックします。
b-2.マスター アイテムのメジャーの[数式]と、任意の[名前]を入力します。
-
※今回はマスター アイテムのメジャーの用途がわかりやすいよう[名前]に「売上集計」と入力します。
b-3.[作成]をクリックします。
上記で作成したマスター アイテムのメジャー「売上集計」を使用して、「年月」が「2024/03」のときの
「Sum([金額])」の結果を比較対象として、実際のメッセージ配信処理を作成していきます!
メッセージ配信の設定をしてみよう
今回は「Qlik Application Automation」のテンプレートの一つである「Notify your team on Microsoft Teams based on a measure」を使用します。
それでは実際の画面を参考に、設定手順を説明していきます!
(1)Qlik Sense SaaSの[新規追加]-[新しい自動化]をクリックして、テンプレート一覧画面を開きます。
(2)テンプレート一覧画面から、「Notify your team on Microsoft Teams based on a measure」で検索し、テンプレートにマウスカーソルを合わせると表示される[テンプレートの使用]をクリックします。
(3)「Notify your team on Microsoft Teams based on a measure」テンプレートの編集画面に遷移します。
(4)[Start]ブロックから、処理を実行するタイミングを設定します。
-
※作成中は実行モードを手動実行の[Manual]のままにしておきます。
なお、実行モードには以下の種類があります。
- Manual:[Run]を手動でクリックした場合のみ実行します。
- Scheduled:設定されたスケジュールで実行します。
- Triggered:WebhookURLを使用してトリガーを設定します。
- Webhook:コネクタブロックからのイベントによってトリガーされます。
各実行モードの詳細は以下記事の手順(8)をご覧ください。
Qlik Application Automation活用術#アプリの連続リロード-「リロードタスクチェーンの設定方法」
(5)[Select Field Values By Query]ブロックから、比較対象のアプリと、計算の軸として使用する項目と項目値を設定します。
- ■App Id
- 比較対象となるアプリIDを入力します。
アプリを開いたときのURLにおける、app/から次の/までの赤字部分がアプリIDです。
以下例のアプリIDは一部マスクしています。
例)https://テナント名.ap.qlikcloud.com/sense/app/534479bc-xxxx-xxxx-xxxx-42572fc06840/
※[do lookup]から、アプリの一覧を表示して選択できます。
アプリの数が多く[do lookup]から探すのが困難な場合は、アプリIDを直接入力することをおすすめします!
- ■Field Name
-
[App Id]で選択したアプリから、計算の軸として使用する項目を選択します。
例)「年月」ごとに計算したいので、「年月」を選択します。
※[do lookup]から、指定したアプリ内の項目の一覧を表示して選択できます。
- ■Field Value Search String
-
[Field Name]で選択した項目から、計算に使用する項目値を選択します。
例)「年月」が「2024/03」という条件で計算したいので、「2024/03」を選択します。
※[do lookup]から、指定した項目内の項目値の一覧を表示して選択できます。
- ■State Name
- [App Id]で選択したアプリから、計算に使用する並列ステートを選択します。
※選択必須項目ではありません。
(6)[Get Measure Value]ブロックから、比較対象のメジャーを設定します。
- ■App Id
- 手順(5)と同じアプリIDを設定します。
- ■Measure Id
- 「事前準備」で作成したマスター アイテムのメジャー「売上集計」を選択します。
例)金額の合計を計算したいので、「売上集計」を選択します。
※[do lookup]から、指定したアプリ内のマスター アイテムのメジャーの一覧が表示できます。
- ■Suppress Zero Values
- 0値を隠すかどうかを選択します。
例)0値を隠して処理するために[Yes]を選択します。
※未選択、もしくは[No]を選択することで0値を隠さず処理します。
(7)[Condition]ブロックから、比較の条件となる閾値を設定します。
-
※今回は「メジャーの結果が500以上」の場合にメッセージを配信するよう設定します。
(8)[Send Message]ブロックの[Connection]タブから、メッセージを配信する接続先となるMicrosoft Teamsのアカウントを設定します。
Microsoftアカウントの連携が未実施の場合は[Connection]タブに接続先が表示されないので、以下の手順を実行します。
(8-1)[Send Message]ブロックの[Connection]タブから
[+ Connect your Microsoft Teams]をクリックします。
(8-2)permissionsで[default]を選択し、[Save]をクリックします。
(8-3)[Link connection]をクリックします。
(8-4)Microsoftアカウントのサインイン画面が表示されます。
-
※「職場または学校アカウント」か「個人用アカウント」かを選択するダイアログボックスが表示される場合がありますが、メッセージの配信先として使用するアカウントでサインインします。
(8-5)Connection is linkedと表示されたら接続先の設定完了です。完了したら[OK]をクリックします。
-
※赤線箇所「Account:」以降には接続先のMicrosoftアカウント名が表示されますが、画像では伏せています。
(8-6)[Connection]タブに接続先が表示されるため、選択します。
(9)[Send Message]ブロックの[Inputs]タブから、メッセージの配信先となるMicrosoft Teamsのチームと配信されるメッセージ内容を設定していきます。
- ■Team Id
- メッセージを配信するチーム名を選択します。
※[do lookup]から、接続先のアカウントで使用できるチーム一覧を表示して選択できます。
- ■Channel Id
- メッセージを配信するチャンネル名を選択します。
※[do lookup]から、指定したチームで使用できるチャンネル一覧を表示して選択できます。
- ■Content
- 処理実行時に配信される任意のコメントを入力します。
例)今月の売上が目標値を突破しました!
(10)画面上部の[Run]をクリックして、処理を実行します。
(11)処理を実行後に結果を確認する画面へ遷移するため、想定通りに処理が実行されているかを確認します。
処理が正常に完了している場合は[Status]に[Finished]が表示され、エラーが発生している場合は[Status]に
[Failed]が表示されます。
-
※手動実行の場合は[Status]の結果が[〇〇 (manual)]となります。
今回は閾値の「500」という値に対して、メジャーの結果「600」という値が返されており、[Condition]ブロックで設定した「メジャーの結果が500以上」という条件に当てはまるため、メッセージが配信されます。
以下が、実際にメッセージを配信したMicrosoft Teamsの画面です。
灰色で伏せている個所には、Microsoft Teamsのユーザー名とユーザーアイコンが表示されています。
(12)実行結果確認後、[Edit]をクリックして編集画面に戻ります。
編集画面に戻ったことを確認します。
(13)[Save]をクリックして、作成した自動化処理を保存して作業を終了します。
作成した自動化処理の名前を変更する場合は以下の手順を実行してください。
(13-1)編集画面右上の歯車アイコンをクリックしてメニューを展開し
[Edit details]を選択します。
(13-2)Automation settingsが表示されるため、[Name]に任意の名前と
[Description]に必要であれば本自動化についての説明を入力し、[Save]を
クリックし保存します。
さいごに
いかがでしたでしょうか。
今回は「Qlik Application Automation」の「Notify your team on Microsoft Teams based on a measure」というテンプレートを使用して、Microsoft Teamsにメッセージを配信する機能を紹介しました!
今回はテンプレートの内容をそのまま使用しましたが、ループ処理や変数を使用した細かい設定も可能です。
このテンプレートの使用をきっかけに、「Qlik Application Automation」で様々な処理の自動化に挑戦してみてください!