Κοινή χρήση μέσω


VAR

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

Σύνταξη

VAR <name> = <expression>  

Παράμετροι

Όρος Ορισμός
όνομα Το όνομα της μεταβλητής (αναγνωριστικό).
Δεν υποστηρίζονται οριοθέτες. Για παράδειγμα, τα "varName" ή [varName] θα έχουν ως αποτέλεσμα σφάλμα.
Υποστηριζόμενο σύνολο χαρακτήρων: a-z, A-Z, 0-9.
Τα 0-9 δεν είναι έγκυρα ως πρώτος χαρακτήρας.
Το __ (διπλός χαρακτήρας υπογράμμισης) επιτρέπεται ως πρόθεμα στο όνομα αναγνωριστικού.
Δεν υποστηρίζονται άλλοι ειδικοί χαρακτήρες.
Δεν επιτρέπονται δεσμευμένες λέξεις-κλειδιά.
Δεν επιτρέπονται ονόματα υπαρχόντων πινάκων.
Δεν επιτρέπονται κενά διαστήματα.
Έκφραση Μια παράσταση DAX που επιστρέφει μια ανυσματική τιμή ή μια τιμή πίνακα.

Επιστρεφόμενη αξία

Μια επώνυμη μεταβλητή που περιέχει το αποτέλεσμα του ορίσματος παράστασης.

Παρατηρήσεις

  • Μια παράσταση που διαβιβάζεται ως όρισμα στη VAR μπορεί να περιέχει μια άλλη δήλωση VAR.

  • Κατά την αναφορά σε μια μεταβλητή:

    • Οι μετρήσεις δεν μπορούν να αναφέρονται σε μεταβλητές που έχουν οριστεί εκτός της παράστασης μέτρησης, αλλά μπορούν να αναφέρονται σε λειτουργικές μεταβλητές εμβέλειας που ορίζονται εντός της παράστασης.
    • Οι μεταβλητές μπορούν να αναφέρονται σε μετρήσεις.
    • Οι μεταβλητές μπορούν να αναφέρονται σε μεταβλητές που έχουν ήδη οριστεί.
    • Δεν είναι δυνατή η αναφορά σε στήλες σε μεταβλητές πίνακα μέσω σύνταξης TableName[ColumnName].
  • Για βέλτιστες πρακτικές κατά τη χρήση του VAR, ανατρέξτε στο θέμα Χρήση μεταβλητών για τη βελτίωση των τύπων σας DAX.

  • Για να μάθετε περισσότερα σχετικά με τον τρόπο χρήσης του VAR σε ένα ερώτημα DAX, ανατρέξτε στο θέμα Ερωτήματα DAX.

Παράδειγμα

Για να υπολογίσετε ένα ποσοστό ανάπτυξης από έτος σε έτος χωρίς τη χρήση μιας μεταβλητής, μπορείτε να δημιουργήσετε τρεις ξεχωριστές μετρήσεις. Αυτή η πρώτη μέτρηση υπολογίζει το Άθροισμα του ποσού πωλήσεων:

Sum of SalesAmount = SUM(SalesTable[SalesAmount])  

Μια δεύτερη μέτρηση υπολογίζει το ποσό πωλήσεων για το προηγούμενο έτος:

SalesAmount PreviousYear =
    CALCULATE([Sum of SalesAmount],
    SAMEPERIODLASTYEAR(Calendar[Date])
    )  

Στη συνέχεια, μπορείτε να δημιουργήσετε μια τρίτη μέτρηση που συνδυάζει τις άλλες δύο μετρήσεις για τον υπολογισμό ενός ποσοστού ανάπτυξης. Παρατηρήστε ότι το άθροισμα της μέτρησης SalesAmount χρησιμοποιείται σε δύο σημεία. πρώτα για να προσδιορίσετε εάν υπάρχει πώληση και, στη συνέχεια, για να υπολογίσετε ξανά ένα ποσοστό.

Sum of SalesAmount YoY%: = 
    IF([Sum of SalesAmount] ,  
        DIVIDE(([Sum of SalesAmount] – [SalesAmount PreviousYear]), [Sum of SalesAmount])
    )  

Χρησιμοποιώντας μια μεταβλητή, μπορείτε να δημιουργήσετε μια μοναδική μέτρηση που υπολογίζει το ίδιο αποτέλεσμα:

YoY% = VAR Sales = SUM(SalesTable[SalesAmount])  

VAR SalesLastYear =
    CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )

    return if(Sales, DIVIDE(Sales – SalesLastYear, Sales))  

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

Χρήση μεταβλητών για τη βελτίωση των τύπων σας DAX
Ερωτήματα DAX