Amazon QuickSight 会計年度に合わせた年間集計を求める方法
はじめに
QuickSight の標準機能では年間集計が 1 月から 12 月となりますが、会計年度での集計が必要なときはないでしょうか。
本記事では、会計年度に合わせた AWS 利用費の年間合計を計算する方法を解説します。会計年度を判別する計算フィールドを作成することがポイントです。
前提条件
本記事では会計年度の開始月を 7 月とする例で説明します。
今回の実装で使用するデータセットには、以下の 2 つのフィールドがあります。
フィールド名 | データ型 | 説明 |
---|---|---|
cost | 数値型 | AWS の月次利用費 |
month | 日付型 | 年月データ(YYYY-MM 形式) |
実装手順
計算フィールドを使用して、会計年度ごとの集計を実現します。
ステップ 1: 会計年度を判別する基本フィールドを作成
各月のデータがどの会計年度に属するかを判定します。7 月以降は現在年度、6 月以前は前年度として扱います。月の数値を変更してご自身の環境に合わせてください。
ifelse(
extract('MM', month) >= 7,
extract('YYYY', month),
extract('YYYY', month) - 1
)
ステップ 2: パラメーターを設定
年度が変わるたびに計算式を変更する手間を省くため、パラメーターを使用します。パラメーターの値は期初に手動変更が必要です。 年度を自動判定できればよかったのですが、計算フィールドが絡むとこの方法しか思いつかなかったです。
設定項目 | 値 |
---|---|
パラメーター名 | CurrentFiscalYear |
データタイプ | Integer |
デフォルト値 | 2025 |
ステップ 3: 現在の会計年度の合計を計算
現在の会計年度に該当するデータのみを集計します。fiscal_year が CurrentFiscalYear パラメーターと一致する場合のみコストを合計します。
sum(
ifelse(fiscal_year = ${CurrentFiscalYear}, cost, 0)
)
ステップ 4: 前年度の合計を計算
前年度のデータを集計します。CurrentFiscalYear から 1 を引いた年度のデータを合計します。
sum(
ifelse(fiscal_year = (${CurrentFiscalYear} - 1), cost, 0)
)
ステップ 5: 会計年度ごとの合計を表示
sumOver 関数を使用して、会計年度ごとにコストを集計します。各年度の合計値を表示できます。
sumOver(
sum(cost),
[fiscal_year]
)
実装結果の確認
テーブル形式での確認
計算フィールドを作成したら、まずテーブル形式で計算結果を確認します。各年度の集計が正しく行われているか検証してください。
プレフィックスによる表示改善
フィールドにプレフィックスを付けることで、会計年度であることをわかりやすく表示できます。
会計年度ごとの合計表示
作成した計算フィールドを使用すると、会計年度ごとの合計を表示できます。今のところ私の用途では今回作成した 3 種類の合計が取れればよかったです。
KPI で表示してみる
current_fy_total と previous_fy_total を使用して、現在の年度と前年度の比較を KPI で表示できます。
補足
今回は会計年度での比較なので計算フィールドで工夫しました。KPI を使って前年比だす場合はどのみち工夫が必要でした。
まとめ
本記事では、QuickSight で会計年度に合わせた年間集計する方法を解説しました。
ポイントは以下の 2 つです。
- fiscal_year フィールドで会計年度を判別する
- パラメーターを使用して年度変更時の運用負荷を軽減する
おわりに
この方法は AWS 利用費以外の集計にもなんらかの売上などにも応用可能です。会計年度での分析が必要なさまざまな場面で使えるのではないでしょうか。