Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
kj_83232
Contributor

除外値を選択した際の挙動

Qlik senseで2つの項目それぞれにフィルターをかけたいです。項目1で適当な水準を選択すると、項目2に除外値ができますが、さらに項目2の除外値を選択すると、元のフィルタ条件(項目1に対する選択状態)がクリアされてしまいます。

ダッシュボードの仕様としては両方の水準ではデータがないことを示したいです。元の選択状態をそのままにして除外値を選択することは可能でしょうか?

Labels (1)
2 Replies
glori923
Contributor

Hello,

 

Qlik Senseで、フィルター(項目の選択状態)が他の項目のフィルターによってクリアされないようにするには、「選択状態をロック」または「データを可視化するためのカスタムロジック」を使用する方法があります。   reading works

以下に解決策を示します。

1. 選択状態をロックする
特定の項目の選択状態をロックすることで、他の項目の選択が影響を与えないようにできます。

手順:
項目1で水準を選択します。
上部メニューの「選択」から「ロック」を選択します(もしくはフィールドを右クリックして「ロック」)。
その状態で項目2を選択してください。
注意:
ロックされた状態では、ユーザーが再び項目1を変更するにはロックを解除する必要があります。
2. セット分析を使用したカスタムロジック
セット分析を使って、両方の選択状態を同時に考慮しながら除外値を表示できます。

手順:
表示したいデータを管理するために、セット分析を利用します。

以下のような式を利用して、項目1と項目2の両方の条件に基づくデータを計算します。

qlik
Count({<項目1 = P(項目1), 項目2 = P(項目2)>} データ項目)
P(項目1)とP(項目2)は、それぞれの項目で現在の選択状態を維持する条件を示します。
この条件を使うことで、選択状態がクリアされず、両方の条件に対応したデータが表示されます。
3. データモデリングの工夫
もし可能であれば、データモデリング段階で以下の工夫をするとさらに柔軟な対応が可能になります。

関連性の再定義:

項目1と項目2が独立して選択状態を維持するように、データモデルを見直します。
例えば、両方の項目に依存しない中間テーブルを作成することで、選択が独立した形で動作することが可能です。
除外値用のカスタムフラグ:

除外値(両方の条件が成り立たない場合)を示すフラグをデータセットに追加し、それをダッシュボードで活用します。
4. 可視化を調整
ユーザーにデータの関係性をより明確に示すために、次のような可視化の工夫を行います。

除外値の強調表示:
色分けやテキスト表示で「選択した条件に一致するデータがありません」というメッセージを表示します。
エラーメッセージ用のメジャー:
以下のような論理を用いて、データがない場合にメッセージを表示することもできます。

qlik
If(Count(データ項目) = 0, '条件に一致するデータがありません', Count(データ項目))
まとめ
項目1の選択状態を維持しつつ項目2を選択するには、ロック機能の利用やセット分析を活用することが最も簡単です。より高度なカスタマイズが必要であれば、データモデリングやビジュアライゼーションの調整も検討してください。

 

Best Regards

kj_83232
Contributor
Author

丁寧なご回答ありがとうございます。詳細まで記載していなかったのですが、以下状況でしたので、ビジュアライゼーションの調整で解決することにしました。

<詳細状況>

・年、週番号、売上、商品、担当営業のような項目を持つテーブルが元データ

・ダッシュボードにはすべてのデータを取り込むが、一部のコンポーネントで先週のみのデータを抽出し、その明細をストレートテーブルで表示したい(集計関数を活用しないので、set数式の活用ができない)

・先週のデータ選択は、年と週番号の組合せで実施(年、週番号の両方の項目それぞれで水準を選択)

・仮に先週の実績がなかった場合には明細がないことを示したいが、ブックマーク等で先週の状態を自動選択しようとすると、該当の水準が無い為に、正しい選択状態とならない場合があった

<解決策>

・拡張機能の演算実行条件で明細レコードがゼロ件の場合はテーブルを非表示とした