はじめに
Qlik Senseの「デバッグモード」と、その中の「ロードレコード数の制限」という機能を利用した、ちょっと便利な小技をご紹介します。
デバッグモードとは
デバッグとは、プログラムの誤りを見つけて手直しをすることを指します。Qlik Senseのデバッグモードを使用すると、データリロードがエラーとなった場合のエラー発生箇所を特定することができます。
また、ブレイクポイントを使用したスクリプトの実行や、ステップ(1行単位)でのスクリプトの実行も可能です。ブレイクポイントやステップでの実行を行うと、変数の値と出力内容を調べることができます。
ブレイクポイント
スクリプトで、ブレイクポイントを追加したいライン番号の右側にある領域をクリックすると、マイナスアイコンが現れます。ブレイクポイントを追加することで、そのラインでデバッグの実行を中止し、その時点での変数の値とアウトプットメッセージを調べることが可能です。
ブレイクポイントに到達すると、実行の中止・次のブレイクポイントまで続行・次のラインに進む、のいずれかを選択することができます。
ロードレコード数の制限
デバッグモードの中の機能のひとつに、「ロードレコード数の制限」というものがあります。この機能を有効にして、ロードするデータの行数を制限すると、実行時間を短縮することが可能です。
この機能を利用して、皆さんがシート作成中に直面するかもしれないある問題を解決する、小技をご紹介します。
データ量が多い場合に、シートの作成画面で「読み込みが遅い問題」に直面することはありませんか?筆者は、約100項目×70万行のデータを6つ使用したアプリの作成時に、テーブルチャートに項目をひとつひとつ追加したり、すべての項目のラベルや数値書式を変更したりする作業を行っていました。その作業を1回行うごとに、毎回5秒ほど読み込みが発生する事態に…。思うように作業が進まずイライラしてしまうことがありました…。
ラベルを変えるだけなのに。数値書式を変えるだけなのに。いちいち読み込みの時間が発生していたら非効率ですよね。
そんなときに、これからご紹介する方法を試していただければと思います。本来の用途ではありませんが、作業効率アップに繋がるはずです!
操作手順
SaaS版のキャプチャを使って説明していきますが、Desktop版もボタンアイコンが違うのみで操作方法は一緒です。簡単3ステップ!
プロ野球選手のデータを用いて説明していきます(野球に興味を持ってもらえたら、嬉しいなぁ、、)。
下の画像は、2023年にパ・リーグ球団に在籍していた選手のデータが入ったテーブルです。
(パ・リーグだけで500人以上いるんだ…)
1.データロードエディタを開き、「デバッグ」を押します(Desktop版は虫マーク)
2.「ロードレコード数の制限」にチェックを入れ、任意のレコード数を入力します(ここでは10)。
3.青枠で囲った矢印付きのボタン(Desktop版は歯車のようなアイコン)を押すと、ロードが開始されます。
↓ ロード中の画面。黄色い帯がたくさん動くので、止まるまで待ちます。
ループ処理などがあると同じ場所を黄色い帯が目まぐるしく動きますが、気長に待ちます。
モデルビューアを確認すると…レコード数が10に絞られました!
テーブルでも、レコード数が減っていることを確認できます。
これによって、読み込み時間の発生が抑えられ、作業効率が上がることが期待できます。
注意点
ロードレコード数を制限して、サクサク作業が進んだ!作業終わり!
…の前に、デバッグモードを解除した状態で再度ロードすることを忘れずに行いましょう。デバッグボタンを再度押すことでモードを解除し、いつものようにロードするだけでOK。モデルビューアで、もとのレコード数に戻っていることを確認できれば完了です◎
おわりに
虫のマークは目にしていたけれど、使い方がわからなかった・使う機会がなかった、という人は少なくないのではないでしょうか?(私もそのひとりでした…)
この記事を読んで、デバッグモードがどのようなものか、どのように利用できるか、少しは理解が進んだでしょうか?様々な機能を駆使して、開発効率をアップさせていきましょう!