Qlik Senseナレッジ - INSIGHT LAB

Qlik Senseで年度対応のカレンダーを作成する

作成者: Deck|2018年4月23日

Qlik Senseでカレンダーの年度対応

こんにちは。Deckです。

Qlik Senseを使用してアプリを作成するときの問題の1つにカレンダーの年度対応があります。

Qlik Senseには日付項目の検出機能がありますが年月日→年度の対応を自動で行ってくれるわけではないため、場合によってはどうしても手動でカレンダーを作成する必要があります。

そこで今回は年度対応したカレンダーを作成するためのTipsを紹介します。

なお、この記事ではすでに「年月日」という項目をロードしているスクリプト内のLOAD文に記述することが前提となります。

 

年月日→年度

4月~12月は年をそのまま使用し、1月~3月は年から1を引くことで年月日を年度に変換できます。

 

If(Month(年月日)<=3, Year(年月日)-1, Year(年月日)) as 年度

 

4月始めカレンダーのソート順

通常の月は数値のため、フィルターパネル等では1月始めの表示となってしまいます。

Dual()関数を使用して表示と内部の数値をずらすことで4月始めのカレンダーを作成できます。

以下の項目定義では『4月は表示順1、5月は表示順2……』という処理を行い4月始めを実現しています。

 

Dual(Month(年月日), Month(年月日) + If(Month(年月日)<=3, 9, -3)) as

 

年度開始日の計算

年の開始日を計算する関数としてはYearStart()関数がありますが、開始月として4月を指定することで年度対応をします。

 

YearStart(年月日, 0, 4) as 年度開始日

 

半期・四半期の計算

4月始めのカレンダーに合わせて半期・四半期の計算をPick()関数で行います。

Pick(Month(年月日),'H2','H2','H2','H1','H1','H1','H1','H1','H1','H2','H2','H2') as 半期,

Pick(Month(年月日),'Q4','Q4','Q4','Q1','Q1','Q1','Q2','Q2','Q2','Q3','Q3','Q3') as 四半期

 

いかがでしょうか?

この記事で紹介したテクニックを使って年度対応のカレンダーを作成してみましょう。