QlikSense

QlikSenseのQVDファイル作成でConnection not found

QlikSenseストア
記事内に商品プロモーションを含む場合があります

私は前職でQlikViewを使っていて、現在の職場ではQlikSenseを使っています。

QlikViewとQlikSenseではQVD作成の仕様が一部異なっており、変更点を確認し解決するまでに少しかかりました。

QVD作成注意点
QlikSenseでQVDファイルを作成する際の注意点QlikSenseでQVDファイルを作成する場合の3つの注意点をご紹介しています。運用面で注意すべき点とコード上で注意すべき点がありますが、正しく処理しないとロードスクリプトがエラーになる、データが正しく取得できないという状況になります。...

そこで、QlikSenseのQVDファイルを作ろうと思っている方、QlikViewからの乗り換えで異なる点を知りたい方のためにので、備忘録として記録しておきます。

出力するQVDファイルの指定方法

QlikViewのファイル指定方法

出力先のファイルは、ファイルシステムのパスを指定します。
絶対パスと相対パスが使えます。

  • STORE テーブルA into ‘C:\テーブルA.qvd’;(絶対パス)
  • STORE テーブルA into テーブルA.qvd;(相対パス)

※特殊文字がなければシングルクォートはあってもなくてもOKです。

Qlik Senseのファイル指定方法

QlikSenseでは、【lib://】ではじまる独自の方式(フォルダデータ接続)で指定します。

  • STORE テーブルA into lib://qvddir/テーブルA.qvd;
  • STORE テーブルA into ‘lib://qvddir/テーブルA.qvd’;

qvddirの部分には、あらかじめ接続が許可されたフォルダを指定します。

初めて利用される場合は、まずは接続を許可するフォルダを定義する必要があります。

接続を許可するフォルダの指定方法

接続の新規作成から「フォルダ」を選択し、ファイルシステム上に存在するフォルダを指定します。

接続許可フォルダ

接続名を付けて保存(作成)すると、以降はこのデータ接続を利用してデータのSTOREができます。

接続名をつけて保存

接続に失敗するパターン

QlikSense利用時、QlikViewの指定方法でSTORE

当初、QlikSenseにてQlikViewと仕様が同じつもりで相対パスを指定してSTOREしたところ、

「No qualified path for file: ***」とエラーが表示されました。

このエラーで、「QlikViewとQlikSenseでは記述方法が違うのか?」と気づきました。

QlikSenseで接続フォルダを指定しているのにエラー

手順通りに接続フォルダを作成し、以下のようにSTOREしました。

STORE テーブルA into lib://qvddir/テーブルA.qvd;

結果は「Connection not found

これにはしばらく原因がわからず悩みましたが、【qvddir】の指定方法が悪かったようです。
【qvddir】という名前でデータ接続を作成したので、この名称を指定すればよいと思ったのですが、実際に接続情報を見ると【qvddir(ユーザー名)】となっていました。

そこで、(ユーザー名)を追加して以下のように記述したところ正常にSTOREできました。

STORE テーブルA into ‘lib://qvddir(ユーザー名)/テーブルA.qvd’;

Qlik Sense側で接続名が一意の名前になるように、「接続名にはユーザー名とドメインが自動的に付加される。」という仕様ですので注意が必要です。

ABOUT ME
アズビーパートナーズ
プログラマー→社内SE→SIerのお仕事をしています。 メーカー勤務を経て、中小企業の社内SE、フリーランスなど様々な形態で働いてきました。 業務上生まれた困った…を解決してきたTipsを備忘録も兼ねて公開しています。 困っている誰かのお役に立てれば幸いです。