共用方式為


要求匯總小計資料

Total 和 Subtotal API 可讓具有矩陣資料檢視的自訂視覺效果向 Power BI 主機要求匯總的小計資料。 小計會針對整個矩陣語意模型計算,或針對矩陣資料階層的個別層級指定。 如需 Power BI 視覺效果中總計和小計 API 的範例,請參閱範例報表

注意

2.6.0 版和更新版本支援要求小計資料。 屬性 rowSubtotalType 可在 5.1.0 版和更新版本中取得。 若要找出您所使用的版本,請檢查 apiVersion pbiviz.json 檔案中的

每次視覺效果重新整理其資料時,視覺效果都會向 Power BI 後端發出 資料擷取要求 。 這些資料要求通常是針對使用者拖入視覺效果欄位井的欄位值。 有時視覺效果需要套用至欄位井的其他匯總或小計(例如總和或計數)。 Total 和 Subtotal API 可讓您自訂傳出資料查詢,以要求更多匯總或小計資料。

Screenshot of visual with subtotals row and columns highlighted.

小計 API

API 會為每個資料檢視類型提供下列自訂專案(目前只有矩陣資料檢視)。

  • rowSubtotals:(布林值) 指出是否應該針對資料欄欄位中的所有欄位要求小計資料。
  • rowSubtotalsPerLevel:(布林值) 指出資料欄欄位中個別欄位的小計資料是否可以切換。
  • columnSubtotals:(布林值) 指出是否 應該針對資料列欄位中的所有欄位要求小計 資料。
  • columnSubtotalsPerLevel:(布林值) 指出資料列欄位中個別欄位的小計 資料是否可以 切換。
  • levelSubtotalEnabled:(布林值) 指出資料列或資料行是否要求小計。 不同于所有其他屬性,這個屬性會套用至個別的資料列或資料行。
  • rowSubtotalsType:(「Top」 或 「Bottom」) 指出是否應該在 () 或之後 bottomtop 取具有 總計 資料的資料列,其餘的資料。 如果此屬性設定為 bottom ,則只有在擷取所有資料之後,才能顯示總計。 預設值為 bottom

每個先前列出的參數都會根據屬性窗格中的相關屬性和預設值來指派值。

如何使用小計 API

視覺效果 的 capabilities.json 檔案必須:

  • 指定上述每個參數所對應的屬性。
  • 提供未定義 屬性時要使用的預設值。

參數會使用類似下列範例的格式:

    "rowSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "rowSubtotals" 
                }, 
                "defaultValue": true 
            },

上述程式碼表示物件中的 subTotals 屬性 rowSubtotals 會啟用資料列小計。 屬性的預設值為 true

每當小計結構和所有參數對應都定義在 capabilities.json 檔案中 時,系統會自動為視覺效果啟用 API。

下列程式碼是 capabilities.json 檔案中 完整 API 組態的範例(從 API 範例視覺效果複製):

"subtotals": { 
        "matrix": { 
            "rowSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "rowSubtotals" 
                }, 
                "defaultValue": true 
            }, 
            "rowSubtotalsPerLevel": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "perRowLevel" 
                }, 
                "defaultValue": false 
            }, 
            "columnSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "columnSubtotals" 
                }, 
                "defaultValue": true 
            }, 
            "columnSubtotalsPerLevel": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "perColumnLevel" 
                }, 
                "defaultValue": false 
            }, 
            "levelSubtotalEnabled": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "levelSubtotalEnabled" 
                }, 
                "defaultValue": true 
            },
            "rowSubtotalsType": {
                "propertyIdentifier": {
                    "objectName": "subtotals",
                    "propertyName": "rowSubtotalsType"
                },
                "defaultValue": "Bottom"
            }
        } 
    }

請務必讓 enumerateProperties() 視覺效果的函式與 capabilities.json 檔案中指定的 預設值一致。 自訂邏輯會根據指定的預設值運作。 如果函 enumerateProperties() 式和預設值未對齊,實際的小計自訂可能會與使用者預期不同。

enum RowSubtotalType {
        Top = "Top",
        Bottom = "Bottom",
   }

若要檢閱可用的自訂專案,請展開 [ 格式 ] 屬性窗格中的 [小計] 下拉式功能表。 修改小計設定,並追蹤 [視覺效果] 窗格中小計簡報 (名為 Totals ) 的變更。

Screenshot of the Power BI Visualizations pane, which shows the Column and Row subtotals field wells.

考量與限制

  • 屬性 rowSubtotalsType 僅適用于資料列。 您無法將資料行小計設定為數據行的開頭。

  • 展開 和折迭 功能會 rowSubtotals 覆寫 。 當資料列展開時,小計會顯示,即使 設定為 false 也一樣 rowSubtotals

使用 Power BI 視覺效果選取專案將互動功能新增至視覺效果