Share via


Αίτηση για συγκεντρωτικά δεδομένα μερικών αθροισμάτων

Το API συνόλου και μερικών αθροισμάτων επιτρέπει στις προσαρμοσμένες απεικονίσεις με προβολή δεδομένων μήτρας να ζητούν δεδομένα μερικών αθροισμάτων συνάθροισης από τον κεντρικό υπολογιστή Power BI. Τα μερικά αθροίσματα υπολογίζονται για ολόκληρο το σημασιολογικό μοντέλο μήτρας ή καθορίζονται για μεμονωμένα επίπεδα της ιεραρχίας δεδομένων μήτρας. Ανατρέξτε στο δείγμα αναφοράς για ένα παράδειγμα του API συνόλου και μερικών αθροισμάτων σε μια απεικόνιση Power BI.

Σημείωμα

Η αίτηση δεδομένων μερικών αθροισμάτων υποστηρίζεται στην έκδοση 2.6.0 και νεότερες εκδόσεις. Η rowSubtotalType ιδιότητα είναι διαθέσιμη στην έκδοση 5.1.0 και νεότερες εκδόσεις. Για να μάθετε ποια έκδοση χρησιμοποιείτε, ελέγξτε το apiVersion στο αρχείο pbiviz.json .

Κάθε φορά που μια απεικόνιση ανανεώνει τα δεδομένα της, η απεικόνιση εκδίδει μια αίτηση ανάκτησης δεδομένων στο παρασκήνιο του Power BI. Αυτές οι αιτήσεις δεδομένων αφορούν συνήθως τιμές των πεδίων που έχει σύρει ο χρήστης στους χώρους συγκέντρωσης πεδίων της απεικόνισης. Μερικές φορές η απεικόνιση χρειάζεται άλλες συναθροίσεις ή μερικά αθροίσματα (για παράδειγμα, άθροισμα ή πλήθος) που εφαρμόζονται στους χώρους συγκέντρωσης πεδίων. Το API συνόλου και μερικών αθροισμάτων σάς επιτρέπει να προσαρμόσετε το εξερχόμενο ερώτημα δεδομένων για να ζητήσετε περισσότερα δεδομένα συνάθροισης ή μερικών αθροισμάτων.

Screenshot of visual with subtotals row and columns highlighted.

Το API μερικών αθροισμάτων

Το API προσφέρει την ακόλουθη προσαρμογή για κάθε τύπο προβολής δεδομένων (προς το παρόν, μόνο προβολές δεδομένων μήτρας).

  • rowSubtotals: (δυαδική τιμή) Υποδεικνύει εάν πρέπει να ζητηθούν τα δεδομένα μερικών αθροισμάτων για όλα τα πεδία στον χώρο συγκέντρωσης πεδίων γραμμών.
  • rowSubtotalsPerLevel: (δυαδική τιμή) Υποδεικνύει εάν τα δεδομένα μερικών αθροισμάτων μπορούν να εναλλάσσονται για μεμονωμένα πεδία στον χώρο συγκέντρωσης πεδίων της γραμμής.
  • columnSubtotals: (δυαδική τιμή) Υποδεικνύει εάν πρέπει να ζητηθούν τα δεδομένα μερικών αθροισμάτων για όλα τα πεδία στον χώρο συγκέντρωσης πεδίων στηλών.
  • columnSubtotalsPerLevel: (δυαδική τιμή) Υποδεικνύει εάν τα δεδομένα μερικών αθροισμάτων μπορούν να εναλλάσσονται για μεμονωμένα πεδία στον χώρο συγκέντρωσης πεδίων στηλών.
  • levelSubtotalEnabled: (δυαδική τιμή) Υποδεικνύει εάν ζητούνται τα μερικά αθροίσματα για τη γραμμή ή τη στήλη. Σε αντίθεση με όλες τις άλλες ιδιότητες, αυτή η ιδιότητα εφαρμόζεται σε μεμονωμένες γραμμές ή στήλες.
  • rowSubtotalsType: ("Top" ή "Bottom") Υποδεικνύει εάν η γραμμή με τα συνολικά δεδομένα πρέπει να ανακτηθεί πριν από (top) ή μετά από (bottom) τα υπόλοιπα δεδομένα. Εάν αυτή η ιδιότητα έχει οριστεί σε bottom, το σύνολο μπορεί να εμφανιστεί μόνο αφού έχουν ληφθεί όλα τα δεδομένα. Η προεπιλογή είναι bottom.

Κάθε ένας από τους διακόπτες που αναφέρθηκαν προηγουμένως αντιστοιχίζεται μια τιμή με βάση τις σχετικές ιδιότητες στο παράθυρο ιδιοτήτων και τις προεπιλογές.

Τρόπος χρήσης του API μερικών αθροισμάτων

Το αρχείο capabilities.json της απεικόνισης πρέπει να:

  • καθορίστε την ιδιότητα στην οποία αντιστοιχίζεται κάθε ένα από τα παραπάνω.
  • Εισαγάγετε την προεπιλεγμένη τιμή που θα χρησιμοποιηθεί εάν η ιδιότητα δεν έχει οριστεί.

Οι διακόπτες χρησιμοποιούν μια μορφή όπως το παρακάτω παράδειγμα:

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

Ο προηγούμενος κώδικας υποδεικνύει ότι τα μερικά αθροίσματα γραμμών ενεργοποιούνται από την ιδιότητα rowSubtotals του subTotals αντικειμένου. Η ιδιότητα έχει προεπιλεγμένη τιμή true.

Το API ενεργοποιείται αυτόματα για μια απεικόνιση κάθε φορά που η δομή των μερικών αθροισμάτων και όλες οι αντιστοιχίσεις εναλλαγής ορίζονται στο αρχείο capabilities.json .

Ο ακόλουθος κώδικας είναι ένα παράδειγμα της πλήρους ρύθμισης παραμέτρων API στο αρχείο capabilities.json (που έχει αντιγραφεί από το δείγμα απεικόνισης 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",
   }

Για να εξετάσετε τις διαθέσιμες προσαρμογές, αναπτύξτε το αναπτυσσόμενο μενού Μερικά αθροίσματα στο τμήμα παραθύρου ιδιοτήτων Μορφοποίηση . Τροποποιήστε τις ρυθμίσεις μερικών αθροισμάτων και παρακολουθήστε τις αλλαγές στην παρουσίαση μερικών αθροισμάτων (με την ονομασία Σύνολα) στο τμήμα παραθύρου Απεικονίσεις.

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

Ζητήματα προς εξέταση και περιορισμοί

  • Η rowSubtotalsType ιδιότητα είναι διαθέσιμη μόνο για γραμμές. Δεν μπορείτε να ορίσετε μερικά αθροίσματα στηλών στην αρχή μιας στήλης.

  • Η δυνατότητα ανάπτυξης και σύμπτυξης παρακάμπτει τη rowSubtotalsδυνατότητα . Τα μερικά αθροίσματα εμφανίζονται όταν αναπτύσσονται οι γραμμές, ακόμα και αν rowSubtotals έχουν οριστεί σε false.

Προσθήκη αλληλεπίδρασης σε απεικόνιση με χρήση επιλογών απεικονίσεων Power BI