Καθοδήγηση σχεδίασης για πίνακες ημερομηνιών στο Power BI Desktop
Αυτό το άρθρο περιγράφει καλές πρακτικές σχεδίασης για τη δημιουργία πινάκων ημερομηνιών στα μοντέλα δεδομένων σας όταν χρησιμοποιείτε το Power BI Desktop.
Ένας πίνακας ημερομηνιών είναι ο πιο συνηθισμένος πίνακας που χρησιμοποιείται για ανάλυση. Αποθηκεύει μία γραμμή ανά ημερομηνία και υποστηρίζει τη συνήθη απαίτηση φιλτραρίσματος ή ομαδοποίησης κατά συγκεκριμένες περιόδους ημερομηνιών, όπως έτη, τρίμηνα ή μήνες.
Επιπλέον, προκειμένου να εργαστείτε με τις συναρτήσεις χρονικής ευφυΐας παραστάσεων ανάλυσης δεδομένων (DAX), το μοντέλο δεδομένων σας πρέπει να έχει τουλάχιστον έναν πίνακα ημερομηνιών. Ένας πίνακας ημερομηνιών είναι ένας πίνακας μοντέλου που ικανοποιεί τις ακόλουθες απαιτήσεις:
- Πρέπει να έχει μια στήλη τύπου δεδομένων ημερομηνίας (ή ημερομηνίας/ώρας)— γνωστή ως στήλη ημερομηνίας.
- Η στήλη ημερομηνιών πρέπει να περιέχει μοναδικές τιμές.
- Η στήλη ημερομηνιών δεν πρέπει να περιέχει ΚΕΝΑ.
- Η στήλη ημερομηνιών δεν πρέπει να περιέχει ημερομηνίες που λείπουν.
- Η στήλη ημερομηνιών πρέπει να εκτείνεται σε ολόκληρα έτη. Ένα έτος δεν είναι απαραίτητα ένα ημερολογιακό έτος (Ιανουάριος-Δεκέμβριος).
- Ο πίνακας ημερομηνιών πρέπει να επισημανθεί ως πίνακας ημερομηνιών.
Μπορείτε να χρησιμοποιήσετε οποιαδήποτε από διάφορες τεχνικές για να προσθέσετε έναν πίνακα ημερομηνιών στο μοντέλο σας:
- Χρήση αυτόματης ημερομηνίας/ώρας
- Σύνδεση με το Power Query (σε έναν υπάρχοντα πίνακα διαστάσεων ημερομηνιών)
- Δημιουργία με το Power Query
- Δημιουργία με DAX
- Κλωνοποίηση με DAX
Φιλοδώρημα
Ένας πίνακας ημερομηνιών είναι ίσως η πιο συνεπής δυνατότητα που θα προσθέσετε σε οποιοδήποτε από τα μοντέλα δεδομένων σας. Σε έναν οργανισμό, ένας πίνακας ημερομηνιών πρέπει να καθορίζεται με συνέπεια. Επομένως, οποιαδήποτε τεχνική και αν αποφασίσετε να χρησιμοποιήσετε, συνιστούμε να δημιουργήσετε ένα πρότυπο Power BI Desktop που περιλαμβάνει έναν πλήρως ρυθμισμένο πίνακα ημερομηνιών. Μοιραστείτε το πρότυπο με όλους τους δημιουργούς μοντέλων δεδομένων στον οργανισμό σας. Επομένως, κάθε φορά που κάποιος αναπτύσσει ένα νέο μοντέλο δεδομένων, μπορεί να ξεκινά με έναν πίνακα ημερομηνιών που έχει καθοριστεί με συνέπεια.
Χρήση αυτόματης ημερομηνίας/ώρας
Η επιλογή Αυτόματη ημερομηνία/ώρα παρέχει βολική, γρήγορη και εύχρηστη χρονική ευφυΐα. Οι συντάκτες αναφορών μπορούν να εργάζονται με τη χρονική ευφυΐα κατά το φιλτράρισμα, την ομαδοποίηση και τη διερεύνηση σε ημερολογιακές χρονικές περιόδους.
Συνιστάται να διατηρείτε ενεργοποιημένη την επιλογή Αυτόματη ημερομηνία/ώρα μόνο όταν εργάζεστε με ημερολογιακές χρονικές περιόδους και όταν έχετε απλοϊκές απαιτήσεις μοντέλου σε σχέση με τον χρόνο. Μπορείτε επίσης να χρησιμοποιήσετε αυτή την επιλογή κατά τη δημιουργία μοντέλων ad hoc ή κατά την εκτέλεση εξερεύνησης δεδομένων ή δημιουργίας προφίλ. Αυτή η προσέγγιση, ωστόσο, δεν υποστηρίζει μια σχεδίαση πίνακα ημερομηνιών που μπορεί να μεταδίδει φίλτρα σε πολλούς πίνακες. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Καθοδήγηση αυτόματης ημερομηνίας/ώρας στο Power BI Desktop.
Σύνδεση με το Power Query
Όταν η προέλευση δεδομένων σας έχει ήδη έναν πίνακα ημερομηνιών, προτείνουμε να τον χρησιμοποιήσετε ως την προέλευση του πίνακα ημερομηνιών μοντέλου σας. Συνήθως συμβαίνει όταν συνδέεστε σε μια αποθήκη δεδομένων, καθώς θα πρέπει να έχει ήδη έναν πίνακα διαστάσεων ημερομηνιών. Με αυτόν τον τρόπο, το μοντέλο σας χρησιμοποιεί μια μοναδική πηγή αλήθειας για τον χρόνο στον οργανισμό σας.
Εάν αναπτύσσετε ένα μοντέλο DirectQuery και η προέλευση δεδομένων σας δεν περιλαμβάνει έναν πίνακα ημερομηνιών, συνιστούμε να προσθέσετε έναν πίνακα ημερομηνιών στην προέλευση δεδομένων. Θα πρέπει να ικανοποιεί όλες τις απαιτήσεις μοντελοποίησης ενός πίνακα ημερομηνιών. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε το Power Query για να συνδεθείτε στον πίνακα ημερομηνιών. Με αυτόν τον τρόπο, οι υπολογισμοί μοντέλου σας μπορούν να χρησιμοποιήσουν τις δυνατότητες χρονικής ευφυΐας DAX.
Δημιουργία με το Power Query
Μπορείτε να δημιουργήσετε έναν πίνακα ημερομηνιών χρησιμοποιώντας το Power Query. Για περισσότερες πληροφορίες, ανατρέξτε στην καταχώρηση ιστολογίου του Chris Webb Δημιουργία πίνακα διαστάσεων ημερομηνιών στο Power Query.
Φιλοδώρημα
Εάν δεν έχετε μια αποθήκη δεδομένων ή άλλο συνεπή ορισμό για τον χρόνο στον οργανισμό σας, εξετάστε το ενδεχόμενο να χρησιμοποιήσετε το Power Query για να δημοσιεύσετε μια ροή δεδομένων. Στη συνέχεια, ζητήστε από όλους τους δημιουργούς μοντέλων δεδομένων να συνδεθούν στη ροή δεδομένων για να προσθέσουν πίνακες ημερομηνιών στα μοντέλα τους. Η ροή δεδομένων γίνεται η μοναδική πηγή αλήθειας για τον χρόνο στον οργανισμό σας.
Εάν χρειαστεί να δημιουργήσετε έναν πίνακα ημερομηνιών, εξετάστε το ενδεχόμενο να το κάνετε με το DAX. Μπορεί να το βρείτε ευκολότερο. Επιπλέον, είναι πιθανό να είναι πιο βολικό, καθώς το DAX περιλαμβάνει κάποια ενσωματωμένη ευφυΐα για την απλοποίηση της δημιουργίας και διαχείρισης πινάκων ημερομηνιών.
Δημιουργία με DAX
Μπορείτε να δημιουργήσετε έναν πίνακα ημερομηνιών στο μοντέλο σας, δημιουργώντας έναν υπολογιζόμενο πίνακα χρησιμοποιώντας είτε τη συνάρτηση DAX CALENDAR , είτε τη συνάρτηση CALENDARAUTO . Κάθε συνάρτηση επιστρέφει έναν πίνακα ημερομηνιών μίας στήλης. Στη συνέχεια, μπορείτε να επεκτείνετε τον υπολογιζόμενο πίνακα με υπολογιζόμενες στήλες για να υποστηρίξετε τις απαιτήσεις σας φιλτραρίσματος και ομαδοποίησης διαστήματος ημερομηνιών.
- Χρησιμοποιήστε τη
CALENDAR
συνάρτηση όταν θέλετε να ορίσετε ένα εύρος ημερομηνιών. Μεταβιβάζετε δύο τιμές: την ημερομηνία έναρξης και λήξης. Αυτές οι τιμές μπορούν να καθοριστούν από άλλες συναρτήσεις DAX, όπωςMIN(Sales[OrderDate])
ήMAX(Sales[OrderDate])
. - Χρησιμοποιήστε τη
CALENDARAUTO
συνάρτηση όταν θέλετε το εύρος ημερομηνιών να περιλαμβάνει αυτόματα όλες τις ημερομηνίες που είναι αποθηκευμένες στο μοντέλο. Μπορείτε να διαβιβάσετε μια μοναδική προαιρετική παράμετρο που είναι ο τελικός μήνας του έτους (εάν το έτος σας είναι ένα ημερολογιακό έτος, το οποίο λήγει τον Δεκέμβριο, δεν χρειάζεται να μεταβιβάσετε μια τιμή). Είναι μια χρήσιμη συνάρτηση καθώς εξασφαλίζει την επιστροφή ολόκληρων ετών ημερομηνιών και επομένως ικανοποιεί την απαίτηση για έναν πίνακα ημερομηνιών με σήμανση. Επιπλέον, δεν χρειάζεται να επεκτείνετε τον πίνακα με γραμμές για τα επόμενα έτη. Αυτό συμβαίνει επειδή όταν ολοκληρώνεται μια ανανέωση δεδομένων, ενεργοποιεί τον επανυπολογισμό του πίνακα. Ένας επανυπολογισμός επεκτείνει αυτόματα το εύρος ημερομηνιών του πίνακα όταν φορτώνονται ημερομηνίες για ένα νέο έτος στο μοντέλο.
Φιλοδώρημα
Για περισσότερες πληροφορίες σχετικά με τη δημιουργία υπολογιζόμενων πινάκων, συμπεριλαμβανομένου ενός παραδείγματος του τρόπου δημιουργίας ενός πίνακα ημερομηνιών, εργαστείτε μέσω της εκπαιδευτικής ενότητας Προσθήκη υπολογιζόμενων πινάκων και στηλών σε μοντέλα Power BI Desktop.
Επίσης, εξετάστε τη χρήση ενός δωρεάν εργαλείου ανοιχτού κώδικα για τη διαχείριση ημερομηνιών με το DAX. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Bravo για Power BI.
Κλωνοποίηση με DAX
Όταν το μοντέλο δεδομένων σας έχει ήδη έναν πίνακα ημερομηνιών και χρειάζεστε έναν άλλο πίνακα ημερομηνιών, όταν η ημερομηνία είναι μια διάσταση αναπαραγωγής ρόλων, μπορείτε εύκολα να κλωνοποιήσετε τον υπάρχοντα πίνακα ημερομηνιών. Μπορείτε να κλωνοποιήσετε έναν πίνακα δημιουργώντας έναν υπολογιζόμενο πίνακα. Η παράσταση υπολογιζόμενου πίνακα είναι απλώς το όνομα του υπάρχοντος πίνακα ημερομηνιών.
Για παράδειγμα, για να δημιουργήσετε έναν Ship Date
πίνακα που κλωνοποιεί τον Date
πίνακα, χρησιμοποιήστε την παρακάτω παράσταση υπολογιζόμενου πίνακα.
Ship Date = 'Date'
Σημείωμα
Όταν κλωνοποιείτε έναν πίνακα με DAX, δημιουργεί μόνο στήλες. Δεν εφαρμόζει ιδιότητες μοντέλου από τον κλωνοποιημένο πίνακα, όπως μορφές ή περιγραφές. Επίσης, οι ιεραρχίες δεν είναι κλωνοποιημένες.
Σχετικό περιεχόμενο
Για περισσότερες πληροφορίες σχετικά με αυτό το άρθρο, ανατρέξτε στους παρακάτω πόρους:
- Αυτόματη ημερομηνία/ώρα στο Power BI Desktop
- Καθοδήγηση για την αυτόματη ημερομηνία/ώρα στο Power BI Desktop
- Ορισμός και χρήση πινάκων ημερομηνιών στο Power BI Desktop
- Προετοιμασία δεδομένων από τον χρήστη στο Power BI
- Συνάρτηση CALENDAR (DAX)
- Συνάρτηση CALENDARAUTO (DAX)
- Ερωτήσεις; Δοκιμάστε να ρωτήσετε την κοινότητα Fabric
- Προτάσεις? Συνεισφέρετε ιδέες για τη βελτίωση του Fabric