Δημιουργία ένας πίνακας ημερομηνιών
Κατά τη δημιουργία αναφοράς στο Power BI, μια κοινή επιχειρηματική απαίτηση είναι να γίνονται υπολογισμοί με βάση την ημερομηνία και την ώρα. Το Οργανισμοί θέλει να μάθει πώς πάει η επιχείρησή του σε μήνες, τρίμηνα, οικονομικά έτη κ.λπ. Για το λόγο αυτό, είναι σημαντικό αυτές οι χρονοπροσανατολισμένες τιμές να μορφοποιηθούν σωστά. Power BI ανιχνεύει αυτόματα για στήλες και πίνακες ημερομηνίας. Ωστόσο, μπορεί να προκύψουν καταστάσεις όπου θα χρειαστεί να κάνετε επιπλέον βήματα για να λάβετε τις ημερομηνίες στη μορφή που απαιτεί ο οργανισμός σας.
Για παράδειγμα, ας υποθέσουμε ότι αναπτύσσετε αναφορές για την ομάδα πωλήσεων στον οργανισμό σας. Η βάση δεδομένων περιέχει πίνακες για πωλήσεις, παραγγελίες, προϊόντα και άλλα. Παρατηρείτε ότι πολλοί από αυτούς τους πίνακες, συμπεριλαμβανομένων των Πωλήσεων και των Παραγγελιών, περιέχουν τις δικές τους στήλες ημερομηνίας, όπως φαίνεται από τις Ημερομηνία αποστολής και Ημερομηνία παραγγελίας στήλες στους πίνακες Πωλήσεις και Παραγγελίες. Έχετε την αποστολή να δημιουργήσετε έναν πίνακα με τις συνολικές πωλήσεις και παραγγελίες ανά έτος και μήνα. Πώς μπορείτε να δημιουργήσετε μια απεικόνιση με πολλούς πίνακες, όπου ο καθένας αναφέρεται στις δικές του στήλες ημερομηνίας;
Για να λύσετε αυτό το πρόβλημα, μπορείτε να δημιουργήσετε έναν κοινό πίνακα ημερομηνιών που μπορεί να χρησιμοποιηθεί από πολλούς πίνακες. Η παρακάτω ενότητα εξηγεί πώς μπορείτε να ολοκληρώσετε αυτήν την εργασία Power BI.
Δημιουργία ένας κοινός πίνακας ημερομηνιών
Τρόποι με τους οποίους μπορείτε να δημιουργήσετε έναν κοινό πίνακα ημερομηνιών είναι:
Δεδομένα προέλευσης
DAX
Power Query
Δεδομένα προέλευσης
Περιστασιακά, οι βάσεις δεδομένων προέλευσης και οι αποθήκες δεδομένων έχουν ήδη τους δικούς τους πίνακες ημερομηνιών. Εάν ο διαχειριστής που σχεδίασε τη βάση δεδομένων έκανε μια ενδελεχή δουλειά, αυτοί οι πίνακες μπορούν να χρησιμοποιηθούν για την εκτέλεση των παρακάτω εργασιών:
Προσδιορίστε τις διακοπές της εταιρείας
Ξεχωριστό ημερολογιακό και οικονομικό έτος
Προσδιορίστε τα Σαββατοκύριακα σε σχέση με τις καθημερινές
Οι πίνακες δεδομένων Προέλευση είναι ώριμοι και έτοιμοι για άμεση χρήση. Εάν έχετε έναν πίνακα ως τέτοιο, βάλτε τον στο σημασιολογικό σας μοντέλο και μην χρησιμοποιήσετε άλλες μεθόδους που περιγράφονται σε αυτήν την ενότητα. Σας συνιστούμε να χρησιμοποιήσετε έναν πίνακα ημερομηνιών πηγής, επειδή είναι πιθανό να είναι κοινόχρηστος με άλλα εργαλεία που μπορεί να χρησιμοποιείτε επιπλέον Power BI.
Εάν δεν έχετε πίνακα δεδομένων προέλευσης, μπορείτε να χρησιμοποιήσετε άλλους τρόπους για να δημιουργήσετε έναν κοινό πίνακα ημερομηνιών.
DAX
Μπορείτε να χρησιμοποιήσετε τις συναρτήσεις έκφρασης ανάλυσης δεδομένων (DAX) CALENDARAUTO() ή CALENDAR() για να δημιουργήσετε τον κοινό σας πίνακα ημερομηνιών. Η συνάρτηση CALENDAR() επιστρέφει ένα συνεχόμενο εύρος ημερομηνιών με βάση μια ημερομηνία έναρξης και λήξης που εισάγονται ως ορίσματα στη συνάρτηση. Εναλλακτικά, η συνάρτηση CALENDARAUTO() επιστρέφει ένα συνεχόμενο, πλήρες εύρος ημερομηνιών που καθορίζονται αυτόματα από το σημασιολογικό σας μοντέλο. Η ημερομηνία έναρξης επιλέγεται ως η παλαιότερη ημερομηνία που υπάρχει στο σημασιολογικό σας μοντέλο και η ημερομηνία λήξης είναι η πιο πρόσφατη ημερομηνία που υπάρχει στο σημασιολογικό σας μοντέλο συν τα δεδομένα που έχουν συμπληρωθεί στον οικονομικό μήνα που μπορείτε να επιλέξετε να συμπεριλάβετε ως όρισμα στο η συνάρτηση CALENDARAUTO(). Για τους σκοπούς αυτού του παραδείγματος, χρησιμοποιείται η συνάρτηση CALENDAR() επειδή θέλετε να δείτε μόνο τα δεδομένα από την Μάιος 31, 2011 (την πρώτη ημέρα που ξεκίνησαν οι πωλήσεις, η παρακολούθηση αυτών των δεδομένων) και τα επόμενα 10 χρόνια.
Στο Power BI Desktop, επιλέξτε Νέο Πίνακας και, στη συνέχεια, εισαγάγετε τον ακόλουθο τύπο DAX:
Dates = CALENDAR(DATE(2011, 5, 31), DATE(2022, 12, 31))
Τώρα, έχετε μια στήλη ημερομηνιών που μπορείτε να χρησιμοποιήσετε. Ωστόσο, αυτή η στήλη είναι ελαφρώς αραιή. Θέλετε επίσης να βλέπετε στήλες μόνο για το έτος, τον αριθμό του μήνα, την εβδομάδα του έτους και την ημέρα της εβδομάδας. Μπορείτε να ολοκληρώσετε αυτήν την εργασία επιλέγοντας Νέο Στήλη στην κορδέλα και εισάγοντας την ακόλουθη εξίσωση DAX, η οποία θα ανακτήσει το έτος από τον πίνακα Ημερομηνιών.
Year = YEAR(Dates[Date])
Μπορείτε να εκτελέσετε την ίδια διαδικασία για να ανακτήσετε τον αριθμό του μήνα, τον αριθμό της εβδομάδας και την ημέρα της εβδομάδας:
MonthNum = MONTH(Dates[Date])
WeekNum = WEEKNUM(Dates[Date])
DayoftheWeek = FORMAT(Dates[Date], "DDDD")
Όταν τελειώσετε, ο πίνακας σας θα περιέχει τις στήλες που φαίνονται στο παρακάτω σχήμα.
Έχετε πλέον δημιουργήσει έναν κοινό πίνακα ημερομηνιών χρησιμοποιώντας το DAX. Αυτή η διαδικασία προσθέτει μόνο τον νέο σας πίνακα στο σημασιολογικό μοντέλο. θα πρέπει ακόμα να δημιουργήσετε σχέσεις μεταξύ του πίνακα ημερομηνιών σας και των πινάκων Πωλήσεις και Παραγγελίες και, στη συνέχεια, να επισημάνετε τον πίνακα ως τον επίσημο πίνακα ημερομηνιών του σημασιολογικού σας μοντέλου. Ωστόσο, προτού ολοκληρώσετε αυτές τις εργασίες, βεβαιωθείτε ότι έχετε εξετάσει έναν άλλο τρόπο δημιουργίας ενός κοινού πίνακα ημερομηνιών: χρησιμοποιώντας το Power Query.
Power Query
Μπορείτε να χρησιμοποιήσετε τη γλώσσα M, τη γλώσσα ανάπτυξης που χρησιμοποιείται για τη δημιουργία ερωτημάτων στο Power Query, για να ορίσετε έναν κοινό πίνακα ημερομηνιών.
Επιλέξτε Transform Data in Power BI Desktop, το οποίο θα σας κατευθύνει στο Power Query. Στον κενό χώρο του αριστερού παραθύρου Ερωτήματα , κάντε δεξί κλικ για να ανοίξετε το παρακάτω αναπτυσσόμενο μενού, όπου θα επιλέξετε Νέο Ερώτημα > Κενό ερώτημα.
Στην προκύπτουσα Νέο Ερώτημα προβολή, εισαγάγετε τον ακόλουθο τύπο M για να δημιουργήσετε έναν πίνακα ημερολογίου:
= List.Dates(#date(2011,05,31), 365*10, #duration(1,0,0,0))
Για τα δεδομένα πωλήσεών σας, θέλετε η ημερομηνία έναρξης να αντικατοπτρίζει την παλαιότερη ημερομηνία που έχετε στα δεδομένα σας: Μάιος 31, 2011. Επιπλέον, θέλετε να δείτε ημερομηνίες για τα επόμενα 10 χρόνια, συμπεριλαμβανομένων ημερομηνιών στο μέλλον. Αυτή η προσέγγιση διασφαλίζει ότι, καθώς εισρέουν νέα δεδομένα πωλήσεων, δεν θα χρειαστεί να δημιουργήσετε ξανά αυτόν τον πίνακα. Μπορείτε επίσης να αλλάξετε τη διάρκεια. Σε αυτήν την περίπτωση, θέλετε ένα σημείο δεδομένων για κάθε μέρα, αλλά μπορείτε επίσης να αυξήσετε κατά ώρες, λεπτά και δευτερόλεπτα. Το παρακάτω σχήμα δείχνει το αποτέλεσμα.
Αφού συνειδητοποιήσετε την επιτυχία στη διαδικασία, παρατηρείτε ότι έχετε μια λίστα ημερομηνιών αντί για έναν πίνακα ημερομηνιών. Για να διορθώσετε αυτό το σφάλμα, μεταβείτε στο Μεταμορφώνω καρτέλα στην κορδέλα και επιλέξτε Μετατρέπω > Στο τραπέζι. Όπως υποδηλώνει το όνομα, αυτή η δυνατότητα θα μετατρέψει τη λίστα σας σε πίνακα. Μπορείτε επίσης να μετονομάσετε τη στήλη σε DateCol.
Επόμενο, θέλετε να προσθέσετε στήλες στον νέο σας πίνακα για να δείτε ημερομηνίες ως προς το έτος, τον μήνα, την εβδομάδα και την ημέρα, ώστε να μπορείτε να δημιουργήσετε μια ιεραρχία στην εικόνα σας. Η πρώτη σας εργασία είναι να αλλάξετε τον τύπο της στήλης επιλέγοντας το εικονίδιο δίπλα στο όνομα της στήλης και, στο αναπτυσσόμενο μενού που προκύπτει, επιλέγοντας τον τύπο Ημερομηνία .
Αφού ολοκληρώσετε την επιλογή του τύπου Date , μπορείτε να προσθέσετε στήλες για έτος, μήνες, εβδομάδες και ημέρες. Μεταβείτε στη στήλη Προσθήκη, επιλέξτε το αναπτυσσόμενο μενού στην περιοχή Ημερομηνία και, στη συνέχεια, επιλέξτε Έτος, όπως φαίνεται στο παρακάτω σχήμα.
Σημειώστε ότι το Power BI έχει προσθέσει μια στήλη όλων των ετών που έχουν ληφθεί από το DateCol.
Ολοκλήρωση η ίδια διαδικασία για μήνες, εβδομάδες και ημέρες. Αφού ολοκληρώσετε αυτή τη διαδικασία, ο πίνακας θα περιέχει τις στήλες που φαίνονται στο παρακάτω σχήμα.
Έχετε πλέον χρησιμοποιήσει με επιτυχία το Power Query για τη δημιουργία ενός κοινού πίνακα ημερομηνιών.
Τα προηγούμενα βήματα δείχνουν πώς να μεταφέρετε τον πίνακα στο σημασιολογικό μοντέλο. Τώρα, πρέπει να επισημάνετε τον πίνακά σας ως τον επίσημο πίνακα ημερομηνιών, ώστε Power BI να τον αναγνωρίσει για όλες τις μελλοντικές τιμές και να διασφαλίσει ότι η μορφοποίηση είναι σωστή.
Επισημάνετε ως τον επίσημο πίνακα ημερομηνιών
Η πρώτη σας εργασία για να επισημάνετε τον πίνακα σας ως τον επίσημο πίνακα ημερομηνιών είναι να βρείτε τον νέο πίνακα στο Πεδία παράθυρο. Κάντε δεξί κλικ στο όνομα του πίνακα και, στη συνέχεια, επιλέξτε Επισήμανση ως πίνακα ημερομηνίας, όπως φαίνεται στην παρακάτω εικόνα.
Επισημαίνοντας τον πίνακα σας ως πίνακα ημερομηνιών, Power BI εκτελεί επικυρώσεις για να διασφαλίσει ότι τα δεδομένα περιέχουν μηδενικές μηδενικές τιμές, είναι μοναδικά και περιέχουν συνεχείς τιμές ημερομηνίας για μια περίοδο. Μπορείτε επίσης να επιλέξετε συγκεκριμένες στήλες στον πίνακά σας για να τις επισημάνετε ως ημερομηνία, κάτι που μπορεί να είναι χρήσιμο όταν έχετε πολλές στήλες στον πίνακά σας. Κάντε δεξί κλικ στον πίνακα, επιλέξτε Επισήμανση ως πίνακα ημερομηνιών και, στη συνέχεια, επιλέξτε Ρυθμίσεις πίνακα ημερομηνίας. Το παρακάτω παράθυρο θα εμφανιστεί, όπου μπορείτε να επιλέξετε ποια στήλη θα επισημανθεί ως Ημερομηνία.
Η επιλογή Επισήμανση ως πίνακα ημερομηνίας θα αφαιρέσει τις ιεραρχίες που δημιουργούνται αυτόματα από το πεδίο Ημερομηνία στον πίνακα που επισημάνατε ως ημερομηνία τραπέζι. Για άλλα πεδία ημερομηνίας, η αυτόματη ιεραρχία θα εξακολουθεί να υπάρχει μέχρι να δημιουργήσετε μια σχέση μεταξύ αυτού του πεδίου και του πίνακα ημερομηνιών ή μέχρι να απενεργοποιήσετε τη λειτουργία Αυτόματη ημερομηνία/ώρα . Μπορείτε να προσθέσετε μη αυτόματα μια ιεραρχία στον κοινό πίνακα ημερομηνιών κάνοντας δεξί κλικ στις στήλες έτος, μήνα, εβδομάδα ή ημέρα στο Πεδία παράθυρο και, στη συνέχεια, επιλέγοντας Νέο ιεραρχία. Αυτή η διαδικασία θα συζητηθεί περαιτέρω αργότερα σε αυτήν την ενότητα.
Δημιουργήστε την οπτική σας
Για να δημιουργήσετε την εικόνα σας μεταξύ των πινάκων Πωλήσεις και Παραγγελίες, θα χρειαστεί να δημιουργήσετε μια σχέση μεταξύ αυτού του νέου κοινού πίνακα ημερομηνιών και των πινάκων Πωλήσεις και Παραγγελίες. Ως αποτέλεσμα, θα μπορείτε να δημιουργήσετε γραφικά χρησιμοποιώντας τον νέο πίνακα ημερομηνιών. Για να ολοκληρώσετε αυτήν την εργασία, μεταβείτε στο Model καρτέλα >Διαχείριση σχέσεων, όπου μπορείτε να δημιουργήσετε σχέσεις μεταξύ του κοινού πίνακα ημερομηνιών και τους πίνακες Παραγγελίες και Πωλήσεις χρησιμοποιώντας τη στήλη OrderDate . Το ακόλουθο στιγμιότυπο οθόνης δείχνει ένα παράδειγμα μιας τέτοιας σχέσης.
Αφού δημιουργήσετε τις σχέσεις, μπορείτε να δημιουργήσετε το Total Sales and Order Ποσότητα by Time οπτικό σας με τον κοινό πίνακα ημερομηνιών που δημιουργήσατε χρησιμοποιώντας το DAX ή Power Query μέθοδος.
Για να προσδιορίσετε τις συνολικές πωλήσεις, πρέπει να προσθέσετε όλες τις πωλήσεις, επειδή η στήλη Ποσό στον πίνακα Πωλήσεις εξετάζει μόνο τα έσοδα για κάθε πώληση και όχι τα συνολικά έσοδα από τις πωλήσεις. Μπορείτε να ολοκληρώσετε αυτήν την εργασία χρησιμοποιώντας τον ακόλουθο υπολογισμό μέτρησης, ο οποίος θα εξηγηθεί σε επόμενες συζητήσεις. Ο υπολογισμός που θα χρησιμοποιήσετε κατά την κατασκευή αυτού του μέτρου είναι ο εξής:
#Total Sales = SUM(Sales[‘Amount’])
Αφού ολοκληρώσετε, μπορείτε να δημιουργήσετε έναν πίνακα επιστρέφοντας στην καρτέλα Οπτικοποιήσεις και επιλέγοντας το Πίνακας οπτικό. Θέλετε να δείτε τις συνολικές παραγγελίες και τις πωλήσεις ανά έτος και μήνα, επομένως θέλετε να συμπεριλάβετε μόνο τις στήλες Έτος και Μήνας από τον πίνακα ημερομηνιών, τη στήλη OrderQty , και το μέτρο #TotalSales . Όταν μαθαίνετε για τις ιεραρχίες, μπορείτε επίσης να δημιουργήσετε μια ιεραρχία που θα σας επιτρέψει να αναλύσετε από χρόνια σε μήνες. Για αυτό το παράδειγμα, μπορείτε να τα δείτε δίπλα-δίπλα. Έχετε πλέον δημιουργήσει με επιτυχία μια απεικόνιση με έναν κοινό πίνακα ημερομηνιών.