Οι παραστάσεις ανάλυσης δεδομένων (DAX) έχουν 35 συναρτήσεις ειδικά για τη συνάθροιση και τη σύγκριση δεδομένων με την πάροδο του χρόνου. Σε αντίθεση με τις συναρτήσεις ημερομηνίας και ώρας του DAX, οι συναρτήσεις χρονικής ευφυΐας δεν έχουν στην πραγματικότητα κάτι παρόμοιο Excel. Αυτό συμβαίνει επειδή οι συναρτήσεις χρονικής ευφυΐας λειτουργούν με δεδομένα που αλλάζουν συνεχώς, ανάλογα με το περιβάλλον που επιλέγετε σε Συγκεντρωτικούς Πίνακες και Power View απεικονίσεις.
Για να εργαστείτε με συναρτήσεις χρονικής ευφυΐας, πρέπει να έχετε έναν πίνακα ημερομηνίας που περιλαμβάνεται στο μοντέλο δεδομένων σας. Ο πίνακας ημερομηνιών πρέπει να περιλαμβάνει μια στήλη με μία γραμμή για κάθε ημέρα κάθε έτους που περιλαμβάνεται στα δεδομένα σας. Αυτή η στήλη θεωρείται ότι είναι η στήλη "Ημερομηνία" (παρόλο που μπορεί να ονομαστεί όπως θέλετε). Πολλές συναρτήσεις χρονικής ευφυΐας απαιτούν τη στήλη ημερομηνίας για να υπολογιστούν σύμφωνα με τις ημερομηνίες που επιλέγετε ως πεδία σε μια αναφορά. Για παράδειγμα, εάν έχετε μια μέτρηση που υπολογίζει ένα υπόλοιπο κλεισίματος τριμήνου χρησιμοποιώντας τη συνάρτηση CLOSINGBALANCEQTR, για να γνωρίζει το Power Pivot πότε είναι το τέλος του τριμήνου, πρέπει να αναφέρεται στη στήλη ημερομηνίας στον πίνακα ημερομηνιών για να γνωρίζει πότε ξεκινά και τελειώνει το τρίμηνο. Για να μάθετε περισσότερα σχετικά με τους πίνακες ημερομηνιών, ρίξτε μια ματιά στην επιλογή "Κατανόηση" και δημιουργήστε πίνακες ημερομηνιών στο Power Pivot Excel.
Συναρτήσεις
Συναρτήσεις που επιστρέφουν μία μόνο ημερομηνία
Οι συναρτήσεις αυτής της κατηγορίας επιστρέφουν μία μόνο ημερομηνία. Στη συνέχεια, το αποτέλεσμα μπορεί να χρησιμοποιηθεί ως ορίσματα σε άλλες συναρτήσεις.
Οι δύο πρώτες συναρτήσεις αυτής της κατηγορίας επιστρέφουν την πρώτη ή την τελευταία Date_Column στο τρέχον περιβάλλον. Αυτό μπορεί να είναι χρήσιμο όταν θέλετε να βρείτε την πρώτη ή την τελευταία ημερομηνία κατά την οποία είχατε μια συναλλαγή ενός συγκεκριμένου τύπου. Αυτές οι συναρτήσεις λαμβάνουν μόνο ένα όρισμα, το όνομα της στήλης ημερομηνίας στον πίνακα ημερομηνιών.
Οι επόμενες δύο συναρτήσεις αυτής της κατηγορίας βρίσκουν την πρώτη ή την τελευταία ημερομηνία (ή οποιαδήποτε άλλη τιμή στήλης επίσης) όπου μια παράσταση έχει μια μη κενή τιμή. Αυτό χρησιμοποιείται πιο συχνά σε περιπτώσεις όπως το απόθεμα, όπου θέλετε να λάβετε το τελευταίο ποσό αποθέματος και δεν γνωρίζετε πότε λήφθηκε το τελευταίο απόθεμα.
-
FIRSTNONBLANK (Date_Column; Παράσταση)
-
LASTNONBLANK (Date_Column, Παράσταση)
Έξι ακόμη συναρτήσεις που επιστρέφουν μία μόνο ημερομηνία είναι οι συναρτήσεις που επιστρέφουν την πρώτη ή την τελευταία ημερομηνία ενός μήνα, τριμήνου ή έτους στο τρέχον περιβάλλον του υπολογισμού.
-
STARTOFMONTH (Date_Column)
-
STARTOFQUARTER (Date_Column)
-
STARTOFYEAR (Date_Column [,YE_Date])
-
ENDOFMONTH (Date_Column)
-
ENDOFQUARTER (Date_Column)
-
ENDOFYEAR (Date_Column [,YE_Date])
Συναρτήσεις που επιστρέφουν έναν πίνακα ημερομηνιών
Υπάρχουν δεκαέξι συναρτήσεις χρονικής ευφυΐας που επιστρέφουν έναν πίνακα ημερομηνιών. Τις περισσότερες φορές, αυτές οι συναρτήσεις θα χρησιμοποιηθούν ως όρισμα SetFilter στη συνάρτηση CALCULATE. Όπως όλες οι συναρτήσεις χρονικής ευφυΐας στο DAX, κάθε συνάρτηση λαμβάνει μια στήλη ημερομηνίας ως ένα από τα ορίσματα της.
Οι πρώτες οκτώ συναρτήσεις αυτής της κατηγορίας ξεκινούν με μια στήλη ημερομηνίας σε ένα τρέχον περιβάλλον. Για παράδειγμα, εάν χρησιμοποιείτε μια μέτρηση σε έναν Συγκεντρωτικό Πίνακα, μπορεί να υπάρχει ένας μήνας ή ένα έτος στις ετικέτες στηλών ή στις ετικέτες γραμμών. Το καθαρό εφέ είναι η στήλη ημερομηνίας φιλτραρισμένο ώστε να περιλαμβάνει μόνο τις ημερομηνίες για το τρέχον περιβάλλον. Ξεκινώντας από αυτό το τρέχον περιβάλλον, αυτές οι οκτώ συναρτήσεις, στη συνέχεια, υπολογίζουν την προηγούμενη (ή την επόμενη) ημέρα, μήνα, τρίμηνο ή έτος και επιστρέφουν αυτές τις ημερομηνίες με τη μορφή ενός πίνακα μίας στήλης. Οι συναρτήσεις "προηγούμενο" λειτουργούν προς τα πίσω από την πρώτη ημερομηνία στο τρέχον περιβάλλον και οι συναρτήσεις "επόμενο" μετακινούνται προς τα εμπρός από την τελευταία ημερομηνία στο τρέχον περιβάλλον.
-
PREVIOUSDAY (Date_Column)
-
PREVIOUSMONTH (Date_Column)
-
PREVIOUSQUARTER (Date_Column)
-
PREVIOUSYEAR (Date_Column [,YE_Date])
-
NEXTDAY (Date_Column)
-
NEXTMONTH (Date_Column)
-
NEXTQUARTER (Date_Column)
-
NEXTYEAR (Date_Column [,YE_Date])
Οι επόμενες τέσσερις συναρτήσεις αυτής της κατηγορίας είναι παρόμοιες, αλλά αντί να υπολογίσουν μια προηγούμενη (ή επόμενη) περίοδο, υπολογίζουν το σύνολο των ημερομηνιών της περιόδου που είναι "μήνας έως ημερομηνία" (ή τρίμηνο σε ημερομηνία ή έτος έως ημερομηνία ή στην ίδια περίοδο του προηγούμενου έτους). Όλες αυτές οι συναρτήσεις εκτελούν τους υπολογισμούς τους χρησιμοποιώντας την τελευταία ημερομηνία στο τρέχον περιβάλλον. Σημειώστε ότι η συνάρτηση SAMEPERIODLASTYEAR απαιτεί το τρέχον περιβάλλον να περιέχει ένα συνεχόμενο σύνολο ημερομηνιών. Εάν το τρέχον περιβάλλον δεν είναι συνεχόμενο σύνολο ημερομηνιών, τότε η συνάρτηση SAMEPERIODLASTYEAR θα επιστρέψει σφάλμα.
-
DATESMTD (Date_Column)
-
DATESQTD (Date_Column)
-
DATESYTD (Date_Column [,YE_Date])
-
SAMEPERIODLASTYEAR (Date_Column)
Οι τελευταίες τέσσερις συναρτήσεις αυτής της κατηγορίας είναι λίγο πιο σύνθετες και, επίσης, λίγο πιο ισχυρές. Αυτές οι συναρτήσεις χρησιμοποιούνται για τη μετάβαση από το σύνολο των ημερομηνιών που βρίσκονται στο τρέχον περιβάλλον σε ένα νέο σύνολο ημερομηνιών.
-
DATEADD (Date_Column, Number_of_Intervals, Διάστημα)
-
DATESBETWEEN (Date_Column, Start_Date, End_Date)
-
DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Διάστημα)
-
PARALLELPERIOD (Date_Column, Number_of_Intervals, Διάστημα)
Η συνάρτηση DATESBETWEEN υπολογίζει το σύνολο των ημερομηνιών μεταξύ της καθορισμένης ημερομηνίας έναρξης και της καθορισμένης ημερομηνίας λήξης. Οι υπόλοιπες τρεις συναρτήσεις μετατοπίζεται σε ορισμένα χρονικά διαστήματα από το τρέχον περιβάλλον. Το διάστημα μπορεί να είναι ημέρα, μήνας, τρίμηνο ή έτος. Αυτές οι συναρτήσεις διευκολύνει τη μετατόπιση του χρονικού διαστήματος για έναν υπολογισμό με οποιοδήποτε από τα εξής:
-
Επιστροφή δύο ετών
-
Επιστροφή κατά ένα μήνα
-
Μετάβαση προς τα εμπρός τρία τρίμηνα
-
Επιστροφή 14 ημερών
-
Μετάβαση προς τα εμπρός 28 ημέρες
Σε κάθε περίπτωση, πρέπει να καθορίσετε μόνο ποιο διάστημα και πόσα από αυτά τα χρονικά διαστήματα θα μετατοπιστεί. Ένα θετικό διάστημα θα μετακινηθεί προς τα εμπρός στο χρόνο, ενώ ένα αρνητικό διάστημα θα μετακινηθεί προς τα πίσω στο χρόνο. Το ίδιο το διάστημα καθορίζεται από μια λέξη-κλειδί των λέξεων DAY, MONTH, QUARTER ή YEAR. Αυτές οι λέξεις-κλειδιά δεν είναι συμβολοσειρές, επομένως δεν θα πρέπει να βρίσκονται σε εισαγωγικά.
Συναρτήσεις που αξιολογούν παραστάσεις σε μια χρονική περίοδο
Αυτή η κατηγορία συναρτήσεων αξιολογεί μια παράσταση σε μια καθορισμένη χρονική περίοδο. Μπορείτε να επιτύχετε το ίδιο πράγμα χρησιμοποιώντας τις συναρτήσεις CALCULATE και άλλες συναρτήσεις χρονικής ευφυΐας. Για παράδειγμα,
= TOTALMTD (Παράσταση, Date_Column [, SetFilter])
είναι ακριβώς το ίδιο με:
= CALCULATE (Παράσταση, DATESMTD (Date_Column)[, SetFilter])
Ωστόσο, είναι πιο εύκολο να χρησιμοποιήσετε αυτές τις συναρτήσεις χρονικής ευφυΐας όταν είναι κατάλληλη για το πρόβλημα που πρέπει να επιλυθεί:
-
TOTALMTD (Παράσταση, Date_Column [, SetFilter])
-
TOTALQTD (Παράσταση, Date_Column [, SetFilter])
-
TOTALYTD (Παράσταση, Date_Column [, SetFilter] [,YE_Date]) *
Επίσης, σε αυτή την κατηγορία υπάρχει μια ομάδα συναρτήσεων που υπολογίζουν τα υπόλοιπα ανοίγματος και κλεισίματος. Υπάρχουν ορισμένες έννοιες που πρέπει να κατανοήσετε με αυτές τις συγκεκριμένες συναρτήσεις. Πρώτα, όπως μπορεί να νομίζετε προφανές, το υπόλοιπο ανοίγματος για οποιαδήποτε περίοδο είναι το ίδιο με το υπόλοιπο κλεισίματος της προηγούμενης περιόδου. Το υπόλοιπο κλεισίματος περιλαμβάνει όλα τα δεδομένα μέχρι το τέλος της περιόδου, ενώ το υπόλοιπο ανοίγματος δεν περιλαμβάνει δεδομένα από την τρέχουσα περίοδο.
Αυτές οι συναρτήσεις επιστρέφουν πάντα την τιμή μιας παράστασης που υπολογίζεται για ένα συγκεκριμένο χρονικό σημείο. Το χρονικό σημείο που μας ενδιαφέρει είναι πάντα η τελευταία δυνατή τιμή ημερομηνίας σε μια περίοδο ημερολογίου. Το υπόλοιπο ανοίγματος βασίζεται στην τελευταία ημερομηνία της προηγούμενης περιόδου, ενώ το υπόλοιπο κλεισίματος βασίζεται στην τελευταία ημερομηνία της τρέχουσας περιόδου. Η τρέχουσα περίοδος καθορίζεται πάντα από την τελευταία ημερομηνία στο τρέχον περιβάλλον ημερομηνίας.
-
OPENINGBALANCEMONTH (Παράσταση, Date_Column [,SetFilter])
-
OPENINGBALANCEQUARTER Τρίμηνο (Παράσταση, Date_Column [;Ορισμός φίλτρου])
-
OPENINGBALANCEYEAR (Παράσταση, Date_Column [,SetFilter] [,YE_Date])
-
CLOSINGBALANCEMONTH (Παράσταση, Date_Column [,SetFilter])
-
CLOSINGBALANCEQUARTER (Παράσταση, Date_Column [,SetFilter])
-
CLOSINGBALANCEYEAR (Παράσταση, Date_Column [,SetFilter] [,YE_Date])
Πρόσθετοι πόροι
Άρθρα: Κατανόηση και δημιουργία πινάκων ημερομηνιών στο Power Pivot Excel
Αναφορά: Αναφορά συνάρτησης DAXστο Office.com
Δείγματα: Μοντελοποίηση και ανάλυση δεδομένων κέρδους και ζημίας με τη Microsoft PowerPivot στην Excel