運用が楽なQuickSightダッシュボードを作る_4（Eメールレポート機能）

# はじめに
ダッシュボードはデータの可視化に優れていますが、閲覧するまでに手数が必要です。
今まで作ってきたQuickSightでも、おおよそ以下の手数があります。

1. ブラウザ起動
1. QuickSightのページへ遷移
1. ユーザ名入力
1. パスワード入力
1. （設定していれば）MFA確認し入力
1. 対象のダッシュボードを探す
1. ダッシュボード閲覧

いくつかはお気に入りや、ブラウザの記録機能を使って省くこともできますが、それでも手間がかかります
大抵、見てもらいたい人ほど忙しく、これらの手間からなかなか見てもらえないこともあるかと思います。

QuickSightではダッシュボードをEメールで送信できる機能があり、それを用いればメールを見るだけでダッシュボードを確認してもらうことができそうです。
今回はその機能の紹介をしようと思います。

# 注意点
以下の説明によると、Enterprise Editionのみで使えるようです。その他制限に問題がないか、一緒に確認が必要です。

https://docs.aws.amazon.com/ja_jp/quicksight/latest/user/sending-reports.html

# 想定運用
弊社でよくありそうな、以下の運用を想定します。
- 定期的に得意先からファイルを受領。または、担当者がシステムから対象データをファイル出力。
    - つまり、人手の作業がトリガーになる想定。
- データをQuickSightに反映。
- データの内容を確認。
- 所感、説明などを作成。
- メールで得意先に送信。

Eメールレポート機能では、送るスケジュールは以下から指定できます。

- 1 度のみ送信 (繰り返しなし) - 選択した日時に 1 回のみレポートを送信します。
- 毎日 (繰り返し) - 毎日同時刻にレポートを送信します。
- 毎週 (繰り返し) - 毎週同日同時刻にレポートを送信します。
- 毎月 (繰り返し) - 毎月同日同時刻にレポートします。

今回は人手での操作のため、自動で繰り返しはせず、都度"1 度のみ送信"をする方法を例にします。

# 手順
## 初回
まずは送信したいダッシュボードを開き、右上の[共有]-[メールレポート]を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/c8beabd1-984b-b0a4-a026-d2e356ae4e00.png)

### 1. レポートのスケジュールの設定
- スケジュール：１度のみ送信(繰り返しなし)
- 初回レポート送信日：送信したい日時
- タイムゾーン：Asia/Tokyo
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/ddb6fd07-4688-a5c9-5dfb-177620e224ed.png)

### 2. メールテキストとレポート設定のカスタマイズ
- レポートタイトル：任意
    - メールに表示されるタイトル、PDFファイル名に使われます。
        - PDFファイル名に使用される文字数に制限があり、長すぎると後ろのほうがカットされます。
        - 日本語だと、PDFファイル名は文字化けします。
- (オプション) E メールの件名：任意
- (オプション) E メールの本文：任意
    - 変更点や連絡事項などを入れておいてもいいかもしれません。
- レポートのシートを選択
    - シートは一つしか選べないようです。
    - TOPにつくるサマリーのシートなどがいいでしょうか。
- PDF　添付ファイルを含める：チェックを入れてみます。
- Include report in email body：チェックを入れてみます。
- レポートの最適化
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/6391ecd6-f0cf-a50e-2553-e57b1a9bd663.png)

### 3. 受取人の選択
ユーザの中から、送信先を選択できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/adcf2498-58a2-7fb7-82d8-2eeb223f79e4.png)

これで、「レポートの保存」で完了です。

## 送信されたメール

送信されたメールは以下になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/21568c50-4ae9-3599-cc4b-f5e9560c2fd5.png)

- メール本文内に、各ビジュアルの画像添付ファイルが表示されていました。
- 「ダッシュボードを表示」から、サインイン画面に遷移します。

## 2回以降

最下部のボタンが増えていました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/50f3cd8a-ca27-ab15-93ac-87bfe286b326.png)

何も変更せず、「今すぐレポートを更新して送信」を押すと、スケジュール設定のところでエラーになってしまいます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/240bc9a5-846f-bce3-f76b-c9859109beee.png)

過去の日時が指定できないようになっているので（過去の日時になると、自動で翌日になる）、注意して送信日時を指定します。

その他、タイトル・件名・本文等を変更して更新しますが、ボタンによってメール送信するタイミングが異なります。

- レポートの更新：送信されるのは、送信日に指定した日時
- 今すぐレポートを更新して送信：今すぐ送信し、かつ送信日に指定した日時にも送信

今回の運用は、データ更新の後1回送ればいいので、以下の2つのいずれかの方法が取れると思います。

- 送信日を直近の未来にして、「レポートの更新」をクリックして、その時間まで待つ。
- 送信日を遥か未来にして、「今すぐレポートを更新して送信」とする。
    - もう一度設定画面を開くと、「このレポートの一時停止」が出ます。一時停止状態でも、「今すぐレポートを更新して送信」で送信されました。

どれくらい未来まで設定できるかはわかりませんが、2040年は指定できました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/282b45fb-eff0-6900-1022-6a31678f7875.png)

わざわざ日時を変更しなくてよい点で、遥か未来の送信日を指定して、今すぐ送信する方が楽かもしれません。

# おわりに
今回はダッシュボードをメールで送信する機能を記事にしました。
1シートだけにはなりますが、見てもらえる機会を増やすのに使えそうです。

次回は、対象のフォルダのファイルの変更をトリガーにして、データセット更新処理を自動で動かす仕組みを仕込んでみようと思います。