Qlik Trainingブログ

  • 可視化
  • SaaS
2023.10.25

Qlik Sense SaaSで日本時間を取得しよう!~失敗しないための注意点~

Qlik Sense SaaSを使っている皆さん、こんにちは!
今日は、日本時間を正確に取得する方法についてお話しします。

Qlik Sense SaaSでは、Today関数やNow関数を使用して現在の日付や時刻を取得できますが、
これらの関数は標準時間(UTC/GMT+00:00)を基準にした値を取得します。
そのため、これらの関数をそのまま使うと、日本時間と比較した時に9時間前の値が取得されてしまいます。

しかし、心配しないでください!
この記事では、その問題を解決する方法を詳しく説明します。

補足として、以下の2つのポイントを覚えておいてください。

・どのリージョンでも共通の動作となります。
・オンプレミス(Windows)版を使用している場合は、サーバーの設定を基準にした時刻が
 取得されるため、日本時間とのズレを気にする必要はありません。

目次

※本記事は「2023年10月時点のSaaS」で作成しています。

対象となる関数

まずは、対象となる関数を確認しましょう。
以下は、Qlik Sense SaaSで使える代表的な日付および時刻関数の一覧です。

関数名 説明
Today 現在の日付を取得します。
Now 現在の日時を取得します。
ReloadTime 最終リロード日時を取得します。
LocalTime 指定されたタイムゾーンの、現在の日時を取得します。
GMT 現在のグリニッジ標準時を取得します。
UTC 現在の協定世界時を取得します。


以下は、上記関数を日本時間の「2023/10/13 10:28」に設定した時のキャプチャーです。
その結果、9時間前の時刻が取得されていることが分かります。


また、Qlik Sense SaaSとQlik Sense Enterprise(Windows版)のそれぞれで、現在のタイムゾーンを取得するTimeZone関数を使用してみました。
その結果、Qlik Sense SaaSでは「GMT」のみ取得され、Qlik Sense Enterpriseでは「GMT+09:00」が取得されましたので、Qlik Sense SaaSでは標準時間(GMT+00:00)が取得されていることが分かります。

<Qlik Sense SaaS>

<Qlik Sense Enterprise(Windows版)>

対処法

それでは、日本時間を取得するための対処法をご紹介します。
日本時間を取得するには、ConvertToLocalTime関数を使用します。

<構文例>
 -------------------------------------------
 ConvertToLocalTime([数式],[地域設定])
 -------------------------------------------


日本時間を取得するには、標準時間+9時間をすれば良いので、数式は以下のように修正します。

<修正前>

<修正後>

<修正後の数式>
 ------------------------------------------------
 ConvertToLocalTime(Now(),'GMT+09:00')
 ------------------------------------------------


日本時間として、9時間後の日時が取得できました!

ロード スクリプトの場合も同様に、以下のように修正します。

例えば、以下のロード スクリプトを日本時間の8時にリロードすると、標準時間では前日の23時となるため、Today関数では前日の日付が取得されます。
そのため日本時間でリロードした日よりも、一日前のデータが取得されてしまいます。

<修正前>

そこで、以下のように修正することで、Today関数の結果を日本時間に修正でき、日本時間通りの日付でデータを取得できます。

<修正後>

<修正後の数式>
 ---------------------------------------------------------------------
 Where [売上日] = ConvertToLocalTime(Today(),'GMT+09:00')
 ---------------------------------------------------------------------


なお、アプリやテナント全体で一括して時間の修正を行うことはできないため、各関数を使用している場所に対し、直接修正を行ってください。

さいごに

いかがでしょうか。
この方法を使えば、Qlik Sense SaaSでも正確な日本時間を取得することができます。
特に、オンプレミス環境からアプリを移行する場合や、ロード スクリプトのWhere句に日付や時刻の関数を使用している場合は、時間のズレに注意してください。

正確な時間情報は、データ分析やレポート作成に欠かせない要素の一つです。
是非、参考にしてみてください!

関連している記事

  • オンプレミス
  • SaaS
2024.02.19

無料会員サービス Qmeet Mateのご案内

Qmeet Mate(きゅーみーとめいと)についてご案内します!

  • SaaS
  • オンプレミス
2024.01.11

Qlik hotspot の利用方法 ~Qlikの運用者向け~

「Qlik hotspot」は Qlik に関するあらゆる情報が集約したサイトです。Qlikの運用や管理をされる際に確認いただきたい情報をピックアップしていますので、是非ご活用ください。

  • データ準備
  • SaaS
  • オンプレミス
  • QlikView
2023.12.28

データ読み込みの新たな可能性を解き放て!~Binary文を活用したデータのロード~

別のQlik Senseアプリケーション(以下、アプリと記載)から、データのみを簡単にロードできたらいいのにな~、と思ったことはありませんか?そんな時は、Binary文を使ってみましょう!

ページの先頭へ戻る