【Domo】常に最新年月のデータをみせたい 2019年07月26日 2019年07月26日

はじめに

Domoではカードで日付範囲の指定が出来ますが、「前月」とした時にチャートが表示されないことはありませんか?
原因はデータの更新タイミングがリアルタイムではないからです。
例えば、6月度の実績データが翌月の10日に更新される場合、その間のデータはDomo上には反映されません。

7_1

ここでは、リアルタイムに実績データが更新できないという運用上の制約がある時の対策を紹介します。


考え方

現時点のデータが持つ最新年月のデータを常に表示させます。
そのため、データの確認タイミングにより表示データを切り替えることが出来ます。
(データ更新前は前々月のデータを表示し、データ更新後は前月のデータを表示する)

7_8

そのために、ETLとBeastModeを使います。
ETLでは実績データから最新年月を判別させ、BeastModeでは「実績年月」と「最新年月」が一致するものを抽出します。


DataFlowイメージ

7_2


操作方法

  1. 「定数を追加」タイルでキー項目と値を追加します。
    キー項目は後述するグループ化で使用します。
    ※定数名やデータタイプ、値は下図通りでなくても良いです。

7_3

  1. 「グループ化」タイルで前述の1.で設定したキー項目でグループ化し、
    最新年月(最大値)を抽出する。※列名は下図通りでなくても良いです。

7_4

  1. 「結合」タイルで、1.と2.をInner結合します。
    ETLでの操作はこれで完了です。

7_5

  1. ここからはカードの操作です。
    「計算フィールドを追加」ボタンを押下し、実績年月と最新年月の一致、
    不一致を判別させるための「最新年月」項目を作成します。
    (例は、最新年月と一致した場合に「1」フラグを立てる処理)

7_6

  1. 「最新年月」項目をフィルタとして使用します。
    前述した4.で「1(一致)」と判別されたデータを、最新年月として表示させます。
    これで操作は完了です。

7_7


まとめ

  • カードの日付範囲で「前月」を選ぶ場合は、リアルタイムでデータ更新されている場合に有効。そうでなければ、データの最新年月を表示させるよう「ETL」と「カード(BeastMode)」の設定する必要がある。

ETLの操作

対象のデータソースから、実績の「最新年月」を抽出する

カード(BeastMode)の操作

「実績年月」とETLで取得した「最新年月」が一致したデータのみを
フィルタ機能で表示させる

  • 「最新年月」は、実績データの最終更新月となるので、更新前は前々月、更新後は前月が表示される。