steps
コンパクトフォームのステップ
1"steps": {
2 "Product_StageName_1": {
3 "type": "aggregateflex",
4 "visualizationParameters": {
5 "visualizationType": "hbar",
6 "options": {}
7 },
8 "query": {
9 "measures": [
10 [
11 "sum",
12 "Amount"
13 ],
14 [
15 "sum",
16 "quantity"
17 ]
18 ],
19 "groups": [
20 "Product",
21 "StageName"
22 ],
23 "order": [
24 [-1, { "ascending": false }]
25 ],
26 "aggregateFilters": [[
27 [
28 "sum",
29 "Amount"
30 ],
31 [
32 [
33 14550720,
34 58807698
35 ]
36 ],
37 ">=<="
38 ]]
39 },
40 "isFacet": true,
41 "useGlobal": true,
42 "isGlobal": false,
43 "datasets": [{
44 "name": "Flexy_Sales",
45 "url": "/services/data/v38.0/wave/datasets/0FbB00000000q5gKAA",
46 "id": "0FbB00000000q5gKAA"
47 }]
48 }
49}SAQL フォームのステップ
ステップが SAQL フォームの場合、各グループと基準がそれぞれ groups と measures プロパティでどのように定義されているか、さらに pigql プロパティでどのように定義されているかを確認してください。クエリの他の部分 (filter、limit、order など) は pigql プロパティで 1 回定義するだけで済みます。関連するグラフウィジェットで正しい予測を表示するには、"groups" および "measures" のコンパクトフォーム要素を指定します
また、SAQL クエリの 'sum_Amount' と 'sum_Amount'の予測が、基準で [[ "count", "*", "sum_Amount" ], [ "count", "*", "sum_quantity" ]] として参照されていることを確認してください。SAQL の基準予測には、集計、アンダースコア (_) 、基準名 ('sum_Amount') が常に含まれるため、それらをコンパクトフォーム "measures": [[ "count", "*", "sum_Amount" ], [ "count", "*", "sum_quantity" ]] で参照できます。
1"steps": {
2 "Product_StageName_2": {
3 "type": "aggregateflex",
4 "visualizationParameters": {
5 "options": {}
6 },
7 "query": {
8 "pigql": "q = load \"Flexy_Sales\";\n
9 q = group q by ('Product', 'StageName');\n
10 q = foreach q generate 'Product' as 'Product',
11 'StageName' as 'StageName',
12 sum('Amount') as 'sum_Amount',
13 sum('quantity') as 'sum_quantity';\n
14 q = filter q by 'sum_Amount' >= 14550720 && 'sum_Amount' <= 58807698;\n
15 q = order q by 'sum_Amount' desc;\nq = limit q 10000;",
16 "measures": [
17 [
18 "count",
19 "*",
20 "sum_Amount"
21 ],
22 [
23 "count",
24 "*",
25 "sum_quantity"
26 ]
27 ],
28 "groups": [
29 "Product",
30 "StageName"
31 ]
32 },
33 "isFacet": true,
34 "useGlobal": true,
35 "isGlobal": false,
36 "datasets": [{
37 "name": "Flexy_Sales",
38 "url": "/services/data/v38.0/wave/datasets/0FbB00000000q5gKAA",
39 "id": "0FbB00000000q5gKAA"
40 }]
41 }
42}aggregateflex ステップと Wave ダッシュボードデザイナのバインド
1"steps": {
2 "Account_BillingCount_1": {
3 "datasets": [{
4 "id": "0FbB00000000oEkKAI",
5 "label": "Opportunities",
6 "name": "opportunity",
7 "url": "/services/data/v38.0/wave/datasets/0FbB00000000oEkKAI"
8 }],
9 "isFacet": true,
10 "isGlobal": false,
11 "query": {
12 "measures": "{{column(StaticMeasureNames.selection, [\"value\"]).asObject()}}",
13 "limit": "{{column(StaticLimits.selection, [\"value\"]).asObject()}}",
14 "groups": "{{column(StaticGroupingNames.selection, [\"value\"]).asObject()}}",
15 "filters": "{{column(StaticFilters.selection, [\"value\"]).asObject()}}",
16 "order": "{{column(StaticOrdering.selection, [\"value\"]).asObject()}}"
17 },
18 "selectMode": "single",
19 "type": "aggregateflex",
20 "useGlobal": true,
21 "visualizationParameters": {
22 "visualizationType": "hbar",
23 "options": {}
24 }
25 }
26}aggregate ステップと Classic デザイナのバインド
Classic デザイナのダッシュボードを Wave デザイナに変換する場合、aggregate ステップは aggregateflex に変換されません。このステップは Classic デザイナのバインド構文を引き続き使用します。これは、Wave デザイナの構文とは異なります。Wave デザイナは両方の構文をサポートします。
1"steps": {
2 "step_Account_Name_1": {
3 "isFacet": false,
4 "query": {
5 "pigql": "q = load \"opp\";\n
6 q = filter q by 'Account-Name' in {{ selection(step_Account_Owner_Name_2) }};\n
7 q = group q by {{ single_quote(value(selection(step_StageName_3))) }};\n
8 q = foreach q generate
9 {{ single_quote(value(selection(step_StageName_3))) }} as {{ value(selection(step_StageName_3)) }},
10 sum('Amount') as 'sum_Amount',
11 count() as 'count'",
12 "groups": "{{ selection(step_StageName_3) }}",
13 "measures": [
14 ["sum", "Amount"]
15 ]
16 },
17 "visualizationParameters": {
18 "visualizationType": "hbar"
19 },
20 "selectMode": "none",
21 "useGlobal": true,
22 "datasets": [{
23 "name": "opp"
24 }],
25 "type": "aggregate",
26 "isGlobal": false
27 }
28}SAQL クエリの比較テーブルのステップ
この例は、モバイルクライアントの Classic デザイナダッシュボード用の比較テーブルのステップを示します。globalQuery の下の pigql 定義には、この単純な 2 列の比較テーブルを作成するための統合された 1 つの SAQL クエリが含まれます。

1"compare_2": {
2 "isFacet": true,
3 "isGlobal": false,
4 "selectMode": "single",
5 "type": "multi",
6 "useGlobal": true,
7 "start": null,
8 "datasets": [
9 {
10 "name": "Honeywell_Recent_Deals1"
11 }
12 ],
13 "visualizationParameters": {
14 "visualizationType": "comparisontable"
15 },
16 "columns": [
17 {
18 "header": "Sum of LeadScore",
19 "query": {
20 "measures": [
21 [
22 "max",
23 "LeadScore"
24 ]
25 ],
26 "groups": [
27 "Industry"
28 ]
29 },
30 "showBars": true
31 },
32 {
33 "header": "Avg of LeadScore",
34 "query": {
35 "measures": [
36 [
37 "avg",
38 "LeadScore"
39 ]
40 ],
41 "groups": [
42 "Industry"
43 ]
44 },
45 "showBars": false
46 }
47 ],
48 "globalQuery": {
49 "pigql": "q = load \"Honeywell_Recent_Deals1\"; q = group q by 'Industry'; q = filter q by 'Industry' in [\"Consumer\",\"Fin Svcs\",\"Mfg\",\"High Tech\",\"Healthcare\",\"Prof Svcs\"]; q = foreach q generate 'Industry' as 'Industry', avg('LeadScore') as 'avg_LeadScore', sum('LeadScore') as 'sum_LeadScore'; q = limit q 2000;"
50 }
51},SAQL についての詳細は、SAQL リファレンスを参照してください。