Qlik Trainingブログ

  • Qlik Sense
  • Qlik Cloud
  • 運用者
  • 開発者
2022.10.19

Qlik Application Automation活用術#Qlik Reporting ユーザーごとに異なる定型レポートを自動で配信

ユーザーごとに異なる定型レポートを自動で配信したいというご希望はありませんか?
そんなときには自動化のQlik Reportingの機能が便利です。
今回はレポートを自動配信する機能をご紹介します。

目次

※本記事は「2022年08月時点のSaaS」で作成しています。

Qlik Reporting とは

Qlik Application Automationを使ってPDFレポートを自動で配信できる機能です。
例えば月次でマネージャーにチームメンバーの残業状況のレポートを配信するなどユーザーごとに異なるデータの定型レポートを配信することができます。

Qlik Application Automationの詳細はこちら
Qlik Application Automation活用術#アプリの連続リロード
https://www.ashisuto.co.jp/qlik-training_blog/article/qaa_reloadtaskchain.html

メーカーのQlik Reportingの紹介についてはこちら
Qlik TECH TALK セミナー:Qlik Reporting Service ~ Qlik Cloudから帳票レポートを配信!
https://www.youtube.com/watch?v=FUVrNYl2kJk

完成イメージ

今回は勤怠アプリに取り込んだメールリスト(※1)を使って残業レポートを自動化(※2)の Qlik Reporting を利用して送る処理を作ります。
※1 配信先のユーザーのメールアドレスが取り込まれたテーブルを指しています。
※2 Qlik Application Automation

デモアプリ(勤怠アプリ)について

今回利用するアプリは架空の会社の勤怠データを使って勤怠情報を分析しています。
この後の「早速作ってみよう」で同じアプリをご用意して頂く必要はございませんが参考として画面イメージを載せています。

社員情報

個人詳細

残業時間

メールリスト

事前準備

・メールアドレスのデータが取り込まれたアプリ
 Qlik のアプリ内に取り込まれたメールアドレス毎にデータを絞り込んでメール配信を実施します。予めメールアドレスのデータの取り込みを実施ください。
・SMTPサーバ (サーバアドレス、ポート) 
 不明な場合は社内のメール管理者にご確認ください。
※今回デモアプリ(勤怠アプリ)を利用していますが実際にはお手持ちの任意のアプリでお試しください。

早速作ってみよう

1) Qlik Senseにログイン
 [+新規追加] > [新しい自動化]

Qlik Application Automation を使うには「新しい自動化」メニューを使います。

2) [Create without templete] をクリックします。
 テンプレートを利用することもできますが今回は一から作成します。

真ん中に出ているサムネイルがテンプレートです。
テンプレートを見本として参考にしながら自動化の処理を組むことができます。

3) 任意の名前と説明を入力して [Save] をクリック

4) 左メニューのアイコンをクリックするとメニューが表示されます。
 各ブロックの説明は下記リンクからご確認ください。
 https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_QlikAutomation/introduction/home-automation.htm

5) テーブルデータ(メールリスト)を取得し、1行ごとにループ処理します。
  これによってユーザー毎に送信される PDF のデータが変更されます。

  左メニューのアイコンをクリック
  [Qlik Cloud Services] > 検索テキストに「table」と入力
  > [Get Straight Table Data ] をエディタにドロップ

自動化は左メニューから処理をシートにドロップしてシートにフローチャートを作成します。 メールアドレスのあるテーブルを一行ずつループさせることで人によって処理内容を分けることができます。 今回はメールを送るときの宛先を人ごとに分けたいためループ処理を行っています。

6) メールアドレスのデータが含まれるテーブルの指定を実施します。該当のテーブルが
  存在するアプリ、シート、オブジェクトの ID を指定する必要があります。
  ※アプリ、シート、オブジェクトのIDは入力欄の下矢印をクリック後 [do lookup] をクリックすると候補が出てきます。
  候補の中から任意で選択ください
  例)アプリIDを指定する場合
    App ID の下矢印をクリック > do lookup >
    アプリ名(ID)の一覧が表示されますので利用するアプリを選択ください。

右メニューのアイコンをクリック
メールリストがある [App ID]、[Sheet Id]、[Object ID] をドロップダウンリストから選択します。

7)レポートを作成します。
  左メニュー > [Qlik Reporting] > [Create Report]  
  > [Get Stratight Table Data] の下にドロップ

8) 右メニューで詳細設定を行います。
  App id ドロップダウンリストより指定
  Report name PDFのレポート名
  sheet mode All(全シート) or Custom(後のステップでシートを選択)

ここまでの手順でレポートを作成するのに必要な情報を設定しました。
(メールリストの取得、アプリの設定など)
次の手順以降ではレポートを作成していきます

9) 今回は 手順⑧で [Custom] を選択したので送信するシートを選択します。
  左メニュー > [Add Sheet To Report] > [Create Report] の下にドロップ

10) 右メニューで詳細を設定します。

今回送付するレポートは勤怠アプリの中の「残業時間」シートですが任意でシートを増やしたり全てのシートを送ることもできます。

11) メールリストのメールアドレスを変数に設定します。
  左メニュー > [Basic] > [Variable] > [Add Sheet to Report] の下にドロップ

12) 右メニューで詳細設定を行います。
  [No valuables found] をクリック
  > 変数に名前をつけて [Save] をクリック
  Name 任意の名前
  Type メールアドレスのためString(文字列)を指定

[Valuable] に先ほど作成した変数を設定

[+ Add operation] > [Set value of vEmaillist ]

13) 処理を一度実行します。
  [Run] をクリックします。

14) 変数にメールアドレスを指定します。
  ドロップダウンリストをクリック > [Item In Get Straight Table Data]
  > メールアドレスをクリック
  ※手順⑬で処理を一度実行するとメールアドレスをドロップダウンリストから選ぶことができます。

メールリストを元にレポートを送るためにはメールアドレスを変数に設定する必要があります。 ここで作成した変数はメールを送付する時の宛先に利用します。

15) レポートの生成処理を行います。
  左メニュー > [Qlik Reporting] > [Generate Report]
  > [Valuable -vEmaillist]の下にドロップ

16) 変数に入ったメールリストをメールの宛先として選べるようにするため [Run] をクリックして処理を回します。

17) 生成したレポートをメールで送付します。
  左メニュー > [Mail] > [Send Mail]

18) 右メニューから詳細を設定します。
  To VEmaillist
  Subject メール件名
  Type text
  Body テスト配信
  Attachments Generate Report
  ※他項目は任意で設定します。

メールの内容の設定はこれで以上となります。

19) メールサーバの設定を行います。
  [Connection] タブをクリックします。
  ここで設定するメールアドレスからレポートが配信されます。
  ※メールサーバの設定情報については社内メールの管理者にご確認ください。

  自動化のフローはこれで完成です。

20) 設定が完了したので処理を実行してみましょう。
  [Run] をクリック

※[Chronologically] タブで現在処理がどこまで終わっているか確認できます。

  処理が終わったらメールアドレスにレポートが届いているか確認してみましょう

  メールリストのメールアドレスにレポートが届いていることが確認できました。

スケジュールの設定

1) 毎週金曜日にメール送信が行われるようにスケジュールを設定します。
  [概要] > [Schedule] タブで下記を入力します > [Save]
  Schedule start 直近の金曜日の日時を指定
  Schedule end 任意の日時 ※テストの場合は直近で設定しましょう。
  Schedule every Week
  Timezone Asis/Tokyo

さいごに

今回は「Qlik Reporting」を使ってレポートを送信する機能をご紹介しました。
ループ処理や変数などで細かい設定が可能なため、受信者によって異なるデータのレポートをまとめて配信する(例:マネージャーに対して、担当するチームメンバーの残業状況レポートを送付)、社外の方に定型のプロモーションメールを送るといったことも可能です。

様々なシーンで活用できるので是非色々と試してみてください!
※無料枠のレポート実行数の上限は 100個/月 です。
 有償でレポート実行数の上限を増やすことも可能です。

関連している記事

  • Qlik Cloud
  • Qlik Sense
  • 利用者
  • 可視化・分析
2024.05.02

複数のアプリから目的のチャート同士を比較しよう!

複数のアプリから特定のチャート同士を比較して見たいことはありませんか?本記事では、Qlik Sense SaaSの[ハブで監視]の活用方法を紹介します。

  • Qlik Cloud
  • Qlik Sense
  • 運用者
2024.04.24

Qlik Cloud 日本リージョンへの移行方法(qlik-cli利用時の注意点)

先日、本ブログにて、日本リージョンへテナントを移行する方法の全体像をご紹介しました。今回は、コマンドラインのqlik-cliを用いたテナント移行時の注意点と、コマンドやスクリプトの記述例をご紹介します。

  • Qlik Sense
  • Qlik Cloud
  • 開発者
  • 運用者
2024.04.17

Qlik Application Automation活用術:Microsoft Teamsにメッセージを配信する

Qlik Sense SaaSを使用していて、メジャーの結果と事前に設定した閾値を比較して、閾値を超えたら通知を飛ばせたら良いな、と考えたことはありませんか?本記事では、Qlik Sense SaaSの「Qlik Application Automation」でMicrosoft Teamsにメッセージを配信する方法を紹介します。

ページの先頭へ戻る