共用方式為


要求彙總的小計資料

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

注意

版本 2.6.0 和更新版本支援要求小計資料。 rowSubtotalType 屬性可於版本 5.1.0 和更新版本中使用。 若要了解您正在使用哪個版本,請檢查 pbiviz.json 檔案中的 apiVersion

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

醒目提示小計資料列和資料行的視覺效果螢幕快擷取畫面。

小計 API

API 為每種資料檢視類型提供以下自訂 (目前僅適用於矩陣資料檢視)。

  • rowSubtotals:(布林值) 指出是否應該針對資料列欄位井中的所有欄位要求小計資料。
  • rowSubtotalsPerLevel:(布林值) 指出資料列欄位中個別欄位井的小計資料是否可以切換。
  • columnSubtotals:(布林值) 指出是否應該針對資料行欄位井中的所有欄位要求小計資料。
  • columnSubtotalsPerLevel:(布林值) 指出資料行欄位井中個別欄位的小計資料是否可以切換。
  • levelSubtotalEnabled:(布林值) 指出是為資料列或資料行要求小計資料。 不同於所有其他屬性,這個屬性會套用至個別資料列或資料行。
  • rowSubtotalsType:(「頂端」或「底端」) 指出具有總計資料的資料列應該在之前 (top) 或之後 (bottom) 擷取其餘資料。 如果此屬性設定為 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",
   }

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

Power BI [視覺效果] 窗格的螢幕擷取畫面,其中顯示 [資料行小計] 和 [資料列小計] 欄位井。

考量與限制

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

  • 展開和摺疊功能會覆寫 rowSubtotals。 當資料列展開時,即使 rowSubtotals 設定為 false,小計仍會顯示。

使用 Power BI 視覺效果選取項目,將互動功能新增至視覺效果中