このトピックでは、主にプレースホルダーの使用方法と適用方法について説明します。
手順
エントリの作成
エントリ 1:カスタム SQL 編集ページ
SQL コード編集ページに移動し、[プレースホルダー管理] をクリックします。

[プレースホルダー管理] パネルで、システムは SQL で使用されているプレースホルダーを一覧表示します。ここで、各プレースホルダーの変数タイプとデフォルト値を調整できます。構成したら、[確認] をクリックします。

エントリ 2:データ処理インターフェイス
データ処理インターフェイスの [ツールバー] で、[プレースホルダーの作成] をクリックし、[変数名]、[変数タイプ]、[クエリのデフォルト値] を入力して、[確認] をクリックします。

データセットにプレースホルダーが含まれている場合は、[フィールドアウトライン] -> [プレースホルダー] アイコン
をクリックして、[プレースホルダー管理] インターフェイスにアクセスします。
プレースホルダー管理インターフェイスで、[プレースホルダーの作成] をクリックして、プレースホルダーを手動で作成します。
エントリ 3:ダッシュボード編集ページ
ダッシュボード編集ページで [新しいプレースホルダー] を作成するには、次の手順に従います。
アイコンをクリックして、新しいプレースホルダーの作成を開始します。
[プレースホルダー管理] インターフェイスで、[新しいプレースホルダーの作成] を選択します。

[プレースホルダーの作成] インターフェイスで、[変数名]、[変数タイプ]、[クエリのデフォルト値] を指定します。

構成項目と説明
構成項目 | 説明 |
変数名 | プレースホルダーの名前。カスタマイズおよび変更できます。 |
型 | プレースホルダーの型。式プレースホルダーと値プレースホルダーに分けられます。型は変更できません。 |
変数タイプ | テキスト、数値、日付-年、日付-四半期、日付-月、日付-週、日付-年月日、日付-年月日時分秒をサポートします。 |
クエリのデフォルト値 | デフォルト値は、[データセットのみ] と [グローバル有効性] の 2 つのモードで有効になります。
入力ボックスには最大 150 文字まで入力できます。 説明 式プレースホルダーのデフォルト値は、area = "Northeast" などの完全な式である必要があります。 |
操作 |
|
値プレースホルダー
ダッシュボードのクエリ コントロールを介して値または値のセットを渡します。
プレースホルダーが日付を表す場合は、特定の日付形式を選択して、入力値の形式を管理します。
形式: '$val{PlaceholderName}'
SQL コード例:
SELECT * FROM tablename
WHERE area in ('$val{area_ph}') -- テキスト型複数選択
AND name = '$val{name_ph}' -- テキスト型単一選択
AND number = $val{number_ph} -- 数値型
AND report_date > '$val{report_date_ph.get(0)}' -- 日付型日付範囲コントロールの開始日を取得
AND report_date < '$val{report_date_ph.get(1)}' -- 日付型日付範囲コントロールの終了日を取得式プレースホルダー
ダッシュボードのクエリコントロールを介して条件を渡します。
ユーザーがダッシュボードのフィルター条件でフィルターメソッドを変更する必要がある場合は、式プレースホルダーを使用してフィルター条件全体を SQL に組み込みます。
形式: $expr{PhysicalFieldName:PlaceholderName}
SQL コード例:
SELECT report_date,
order_level,
shipping_type,
area,
price,
order_number
from company_sales_record
where $expr{report_date :report_date}
and $expr{order_level :order_level}
and $expr{order_number :order_number}タグプレースホルダー
タグ プレースホルダーを使用して、現在のユーザーのタグ値を取得します。
形式: $tag{UserTagName}
たとえば、従業員が北エリアと特定の製品のデータのみを表示するようにするには、ユーザーのタグを次のように構成します。
エリア:
North製品:
Product A, Product B
SQL コードセグメントの例:
select * from table_name
where
area = '$tag{Area}'
and
product in ('$tag{Product}')システムは、データアクセス中にユーザーのタグを自動的に取得します。実行時 SQL の例:
select * from table_name
where
area = 'North'
and
product in ('Product A', 'Product B')システムプレースホルダー
システム プレースホルダーは他のプレースホルダーと同様に機能し、SQL および計算フィールドで使用できます。次の 4 つのシステム プレースホルダーをサポートしています。
ユーザー名 (ログインアカウント):
$system{accountName}ユーザーニックネーム (組織内):
$system{userNick}ユーザー ID (Quick BI システム内):
$system{userId}サードパーティシステムユーザー ID (Alibaba Cloud ID):
$system{accountId}
SQL ステートメントの例:
select
*
from
company_sales_record
where
customer_name = '$system{accountName}'
and customer_name = '$system{userNick}'条件プレースホルダー
ダッシュボードのツリー ドロップダウンクエリコントロールを介して値のセットを渡します。
形式: '$condition{PrimaryField, SecondaryField: PlaceholderName}'
フィールドの数は最大 10 個に制限されており、クエリコントロールのツリー構造と一致する必要があります。
SQL ステートメントの例:
select
*
from
company_sales_record
where
$condition{product_type,product_sub_type,product_name :product_para}クエリ コントロールの構成は次のとおりです。

シナリオ
シナリオ 1 - 計算フィールドの結果値を動的に調整する
シナリオの説明
式で計算フィールドとプレースホルダーを使用して、異なるプレースホルダー値を渡すことにより、計算フィールドの値を動的に変更します。
たとえば、プレースホルダー値を超える注文は大きな注文と見なされ、それ以外の注文は小さな注文と見なされます。クエリ コントロールを使用して注文サイズの基準を動的に調整すると、チャートが更新されて変更が反映されます。
手順
プレースホルダーを作成する
カスタム SQL 編集ページまたはデータセット編集ページで、[プレースホルダー管理] -> [プレースホルダーの作成] をクリックします。

変数名 [価格] を入力し、タイプとして [値プレースホルダー] を選択し、変数タイプとして [数値] を選択し、クエリのデフォルト値を [グローバル有効性] に設定し、オプションでデフォルト値を [100] に設定します。
説明計算フィールドで使用されるプレースホルダーは、グローバルに有効なデフォルト値を持つ必要があります。

計算フィールドを作成する。
データセット編集ページで、[フィールドの作成] をクリックし、画像に示すように [注文規模] フィールドを作成します。

フィールド式の例:
case when [price]>$val{Price} then 'Large Order' else 'Small Order' end[確認] をクリックし、データセットを [保存] します。
視覚化チャートとクエリ コントロールを作成する。
ダッシュボードを作成して分析を開始します。
ダッシュボード編集ページで、画像に示すように [棒グラフ] を追加します。

[注文サイズ] フィールドを [カテゴリ軸/ディメンション] にドラッグし、[価格] フィールドを [値軸/メジャー] に配置し、[更新] をクリックします。棒グラフは次のように表示されます。

現在、メジャー フィールドの価格は、価格のデフォルト プレースホルダー値 100 に基づいて、大きな注文と小さな注文を区別しています。
図のようにクエリコントロールを作成します。

クエリ条件設定インターフェイスで、プレースホルダーの価格をクエリ条件として指定します。

効果を確認する。
これで、クエリ コントロールに値を入力することで、大きな注文と小さな注文の基準を調整できます。
たとえば、クエリ コントロール値が 100 に設定されている場合、大きな注文額は 607,200 です。クエリ コントロール値を 150 に変更すると、大きな注文額は 525,000 になります。

シナリオ 2 - インジケーターまたは分析ディメンションを柔軟に切り替える
シナリオの説明
この機能を使用して、チャート上の複数のインジケーターとディメンションを切り替えることで、複数のチャートを作成することによる煩雑さや冗長性を回避します。
インジケーター ディメンションの切り替えの例を考えてみましょう。
手順
プレースホルダーを作成する。
カスタム SQL 編集ページまたはデータセット編集ページで、[プレースホルダー管理] -> [プレースホルダーの作成] をクリックします。

変数名 [インジケーター] を入力し、タイプを [値プレースホルダー] に設定し、変数タイプとして [テキスト] を選択し、クエリのデフォルト値を [グローバル有効性] に設定し、デフォルト値を [単価] に設定します。

計算フィールドを作成する。
[フィールドの作成] をクリックし、画像に示すように [データ] フィールドを作成します。

フィールド式の例:
case when '$val{Indicator}'='Order Amount' then [Order Amount] when '$val{Indicator}'='Profit Amount' then [Profit Amount] when '$val{Indicator}'='Unit Price' then [Unit Price] when '$val{Indicator}'='Shipping Cost' then [Shipping Cost] else 0 end説明テキストタイプのプレースホルダーは、'$val{Indicator}' のように単一引用符で囲む必要があります。
[確認] をクリックし、データセットを [保存] します。
視覚化チャートとクエリ コントロールを作成する。
ダッシュボードを作成して分析を開始します。
ダッシュボード編集ページで、画像に示すように [棒グラフ] を追加します。

[エリア] フィールドを [カテゴリ軸/ディメンション] にドラッグし、[データ] セグメントを [値軸/メジャー] に配置し、[更新] をクリックします。棒グラフは次のように表示されます:

画像に示すようにクエリ コントロールを作成します。

クエリ条件設定インターフェイスで、プレースホルダー インジケーターをクエリ条件として設定します。オプション値のソースとして [手動入力] を選択し、[手動入力] 値を構成します。

効果を確認する。
これで、クエリ コントロールで値をフィルタリングすることで、異なるインジケーターを切り替えることができます。

シナリオ 3 - 補助線を動的に調整する
シナリオの説明
補助線の値をプレースホルダーにリンクして、プレースホルダーの値が更新されると、補助線がそれに応じて調整されるようにします。
たとえば、補助線が毎月の売上 KPI を表す場合、レポートを再度編集することなく、クエリ コントロールを介して毎月その位置を動的に更新できます。
手順
プレースホルダーを作成する
説明補助線プレースホルダーは数値型のみをサポートします。
ダッシュボード編集ページで、図のようにプレースホルダーを作成します。

変数名 [目標] を入力し、変数タイプを [数値] に設定し、クエリのデフォルト値を [グローバル有効性] に設定し、デフォルト値を [4,000,000] に設定します。
説明補助線で使用されるプレースホルダーは、グローバルに有効なデフォルト値を持つ必要があります。

補助線を設定します。
分析 タブで、補助線を見つけて鉛筆アイコンをクリックして編集します。

図のように補助線を設定して追加し、その値をプレースホルダー Target に設定します。

これで、チャートには 400 万のマークに補助線が表示されます。

クエリコントロールを作成します。
画像に示すように、クエリ コントロールを生成します。

プレースホルダー [ターゲット] をクエリ条件として設定し、[確認] をクリックします。

効果を確認する。
クエリ コントロールの値を変更することで、補助線の位置を変更します。

シナリオ 4 - SQL コードでプレースホルダーを使用して、フィールド結果値の動的な調整とフィルタリングを実現する
シナリオの説明
データセットを作成する際に SQL コードにプレースホルダーを組み込むことで、プレースホルダーの値を変更することにより、フィールドの結果値を動的に調整およびフィルタリングできます。
手順
データセット編集ページで、キャンバス上の [SQL コードを使用してデータセットを作成するには、ここをクリックします] または左パネルの [SQL コードでテーブルを作成] をクリックします。

次のように SQL コードを入力します。

SQL ステートメントの例:
SELECT report_date, order_level, shipping_type,price,order_number,area, case when profit_amt< ${profit_range} then'Loss' when profit_amt> ${profit_range} then'Profit' else 'Break-even' end 'Order Level' from company_sales_record where $expr{report_date :report_date} and $expr{order_level :order_level} and $expr{order_number :order_number}プレースホルダー管理 をクリックします。

プレースホルダー管理インターフェイスにアクセスし、デフォルト値を入力します。
説明select 文の後に適用されるプレースホルダーには、グローバルに有効なデフォルト値が必要です。
この例では、プレースホルダー "profit_range" にはグローバルに有効なデフォルト値が必要です。
[実行] をクリックしてクエリを実行し、結果を表示します。

[編集の確認] をクリックし、次に [保存] をクリックして、編集を完了します。
視覚化チャートとクエリ コントロールを作成します。
ダッシュボードを作成して分析を開始します。
ダッシュボード編集ページで、画像に示すように [円グラフ] を追加します。

図のようにクエリ コントロールを作成します。

効果の確認
クエリ コントロールに値を入力することで、利益範囲の条件を変更できるようになりました。
