Qlik Trainingブログ

  • Qlik Cloud
  • Qlik Sense
  • 開発者
  • データロード
  • 可視化・分析
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句に日付や時刻の関数を使用している場合は、時間のズレに注意してください。

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

関連している記事

  • Qlik Cloud
  • Qlik Sense
  • 運用者
2024.04.24

Qlik Cloud 日本リージョンへの移行方法(qlik-cli利用時の注意点)

先日、本ブログにて、日本リージョンへテナントを移行する方法の全体像をご紹介しました。今回は、コマンドラインのqlik-cliを用いたテナント移行時の注意点と、コマンドやスクリプトの記述例をご紹介します。

  • Qlik Sense
  • Qlik Cloud
  • 開発者
  • 運用者
2024.04.17

Qlik Application Automation活用術:Microsoft Teamsにメッセージを配信する

Qlik Sense SaaSを使用していて、メジャーの結果と事前に設定した閾値を比較して、閾値を超えたら通知を飛ばせたら良いな、と考えたことはありませんか?本記事では、Qlik Sense SaaSの「Qlik Application Automation」でMicrosoft Teamsにメッセージを配信する方法を紹介します。

  • Qlik Cloud
  • Qlik Sense
  • 運用者
2024.04.01

Qlik Cloud 日本リージョンへの移行方法

2024 年 3 月 26 日に QlikTech 社より Qlik Cloud の日本リージョン開設の ニュースリリースが発表されました。本ブログではすでに Qlik Cloud(Qlik Sense Enterprise SaaS) をご利用中のユーザー様に向けて、日本リージョンへテナントを移行する方法をご紹介します。

ページの先頭へ戻る