Kintoneで前年同月比のグラフ表示
やりたいこと
月別の売上高等を前年同月比と比較できるグラフを作成したい。
エクセルなら簡単にできますが、Kintoneでやろうとするとグラフの設定で「はて?」と迷ってしまうことはありませんか?
標準機能で月別売上をグラフを設定すると、以下の様に時系列に並ぶだけで前年同月比の表示になりません。
少し工夫すれば、標準機能だけで前年同月比のグラフを作成できます。
但し、フォーム設計の段階で事前準備が必要です。
グラフの設定
前年同月比グラフの設定画面は以下の様になっています。
ポイントは「分類する項目:」の大項目と中項目の設定内容です。
大項目に「取引日(月)」、中項目に「取引日(年)」を設定していますが、この値を「取引日」の日付型フィールドから自動計算する文字型フィールドを予めフォーム上に作成しておく必要があります。
フォームの設定
月別に集計したい値(例えば売上)の日付フィールドを、自動計算で年と月に分解して保存する文字型フィールドを2つ作ります。
フィールド型は文字列(1行)で、フィールド名は、取引日(年)、取引日(月)としておきます。
フィールドコードに()は使えないので、変更する場合は「取引日_年」の様にアンダーバーで連結した形式にしておいてください。
自動計算するにチェックを入れて、DATE_FORMAT関数を使います。
年を取り出す:DATE_FORMAT(取引日, "YY", "Etc/GMT")
月を取り出す:DATE_FORMAT(取引日, "MM", "Etc/GMT")
詳しい使い方は、DATE_FORMAT関数の基本的な使い方(ヘルプ)を参照して下さい。
以下の画面は、取引日の月を自動計算してセットする設定例です。
ここまで出来たら、グラフの設定で説明した通りに、分類する項目の大項目に取引日(月)、中項目に取引日(年)を設定します。
グラフの設定例を再掲しておきます。
データ入力する前に設定しておく必要があります
既にデータが入力されているアプリで、上記の様にフォームとグラフの設定を変更している場合は、それだけでは、グラフは表示されません。
後から追加した自動計算型のフィールドは、レコードを更新したタイミングで計算式が動く(値がセットされる)からです。
データが入力済のアプリで自動計算を行うフィールドを追加した場合は、レコードの更新が必要です。
しかし、大量のレコードを1件づつ呼び出して編集⇒保存とするのは時間の無駄ですので、Kintoneの「ファイルから読み込む」機能でレコード番号をキーに一括更新しましょう。
詳細は、レコードの一括登録と一括更新(ヘルプ)を参照して下さい。
アプリ作成では、どの様な一覧表とグラフが必要なのか「事前設計」をしっかりやっておかないと、後から機能修正するのは手間が大きくなるので注意が必要ですね。
よろしければサポートお願いします! いただいたサポートは、note記事制作の活動費に使わせていただきます!