Data Analysis Expressions (DAX) כולל 35 פונקציות המיועדות במיוחד לצבירה והשוואה של נתונים לאורך זמן. בניגוד לפונקציות התאריך והשעה של DAX, לפונקציות בינת הזמן אין שום דבר דומה ב- Excel. הסיבה לכך היא שפונקציות בינת זמן פועלות עם נתונים המשתנים כל הזמן, בהתאם להקשר שאתה בוחר בטבלאות PivotTable ובפריטים חזותיים של Power View.
כדי לעבוד עם פונקציות של בינת זמן, עליך לכלול טבלת תאריכים במודל הנתונים שלך. טבלת התאריכים חייבת לכלול עמודה עם שורה אחת עבור כל יום בכל שנה הכלולה בנתונים שלך. עמודה זו נחשבת לעמודה 'תאריך' (למרות שניתן לתת לה שם כלשהו). פונקציות רבות של בינת זמן דורשות את עמודת התאריך כדי לחשב לפי התאריכים שבחרת כשדות בדוח. לדוגמה, אם יש לך מדיד שמחשב יתרת סיום רבעון סוגר באמצעות הפונקציה CLOSINGBALANCEQTR, כדי ש- Power Pivot יוכל לדעת מתי באמת סוף הרבעון, עליו להפנות לעמודת התאריכים בטבלת התאריכים כדי לדעת מתי הרבעון מתחיל ומתי מסתיים. כדי ללמוד עוד אודות טבלאות תאריכים, עיין בנושא הבנה ויצירה של טבלאות תאריכים ב- Power Pivot ב- Excel.
פונקציות
פונקציות המחזירות תאריך יחיד
פונקציות בקטגוריה זו מחזירות תאריך יחיד. לאחר מכן ניתן להשתמש בתוצאה כארגומנטים לפונקציות אחרות.
שתי הפונקציות הראשונות בקטגוריה זו מחזירות את התאריך הראשון או האחרון Date_Column בהקשר הנוכחי. אפשרות זו יכולה להיות שימושית כאשר ברצונך למצוא את התאריך הראשון או האחרון שבו בוצעה עסקה מסוג מסוים. פונקציות אלה משתמשות בארגומנט אחד בלבד, שם עמודת התאריך בטבלת התאריכים.
- תאריך ראשון (Date_Column)
- תאריך אחרון (Date_Column)
שתי הפונקציות הבאות בקטגוריה זו מוצאות את התאריך הראשון או האחרון (או כל ערך עמודה אחר) כאשר לביטוי יש ערך שאינו ריק. זה משמש לרוב במצבים כמו מלאי, שבהם אתה רוצה לקבל את כמות המלאי האחרונה, ואתה לא יודע מתי נלקח המלאי האחרון.
- FIRSTNONBLANK (Date_Column, ביטוי)
- LASTNONBLANK (Date_Column, ביטוי)
שש פונקציות נוספות המחזירות תאריך יחיד הן הפונקציות שמחזירות את התאריך הראשון או האחרון של חודש, רבעון או שנה במסגרת ההקשר הנוכחי של החישוב.
- STARTOFMONTH (Date_Column)
- STARTOFQUARTER (Date_Column)
- STARTOFYEAR (Date_Column [,YE_Date])
- סוף החודש (Date_Column)
- סוף הרבעון (Date_Column)
- ENDOFYEAR (Date_Column [,YE_Date])
פונקציות המחזירות טבלה של תאריכים
קיימות שש עשרה פונקציות של בינת זמן שמחזירות טבלה של תאריכים. לעתים קרובות, פונקציות אלה ישמשו כארגומנט SetFilter עבור הפונקציה CALCULATE . בדומה לכל פונקציות בינת הזמן ב- DAX, כל פונקציה מקבלת עמודת תאריך כאחד מהארגומנטים שלה.
שמונה הפונקציות הראשונות בקטגוריה זו מתחילות בעמודת תאריך בהקשר הנוכחי. לדוגמה, אם אתה משתמש במדיד ב- PivotTable, ייתכן שיופיע חודש או שנה בתוויות העמודה או בתוויות השורה. אפקט הנטו הוא שעמודת התאריך מסוננת כך שתכלול רק את התאריכים עבור ההקשר הנוכחי. החל מהקשר נוכחי זה, שמונה פונקציות אלה מחשבות את היום, החודש, הרבעון או השנה הקודמים (או הבא) ומחזירות תאריכים אלה בצורת טבלה בעלת עמודה אחת. הפונקציות "הקודם" פועלות אחורה מהתאריך הראשון בהקשר הנוכחי, והפונקציות "הבאות" עוברות קדימה מהתאריך האחרון בהקשר הנוכחי.
- יום קודם (Date_Column)
- PREVIOUSMONTH (Date_Column)
- הרובע הקודם (Date_Column)
- PREVIOUSYEAR (Date_Column [,YE_Date])
- למחרת (Date_Column)
- החודש הבא (Date_Column)
- הרבעון הבא (Date_Column)
- NEXTYEAR (Date_Column [,YE_Date])
ארבע הפונקציות הבאות בקטגוריה זו דומות, אך במקום לחשב תקופה קודמת (או הבאה), הן מחשבות את סידרת התאריכים בתקופה שהיא "מחודש עד מאורך" (או רבעון עד תאריך או משנה עד תאריך או באותה תקופה בשנה הקודמת). כל הפונקציות הללו מבצעות את החישובים שלהן באמצעות התאריך האחרון בהקשר הנוכחי. שים לב ש- SAMEPERIODLASTYEAR דורש שההקשר הנוכחי יכיל קבוצה רציפה של תאריכים. אם ההקשר הנוכחי אינו קבוצה רציפה של תאריכים, הפונקציה SAMEPERIODLASTYEAR תחזיר שגיאה.
- תאריך MTD (Date_Column)
- DATESQTD (Date_Column)
- DATESYTD (Date_Column [,YE_Date])
- אותו תקופהשנה שעברה (Date_Column)
ארבע הפונקציות האחרונות בקטגוריה זו הן קצת יותר מורכבות וגם קצת יותר חזקות. פונקציות אלה משמשות למעבר מערכת תאריכים בהקשר הנוכחי לערכה חדשה של תאריכים.
- DATEADD (Date_Column, Number_of_Intervals, מרווח זמן)
- DATESBETWEEN (Date_Column, Start_Date, End_Date)
- DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, מרווח זמן)
- תקופה מקבילית (Date_Column, Number_of_Intervals, מרווח)
הפונקציה DATESBETWEEN מחשבת את ערכת התאריכים בין תאריך ההתחלה ותאריך הסיום שצוין. שלוש הפונקציות הנותרות מזיזות מספר מסוים של מרווחי זמן מההקשר הנוכחי. מרווח הזמן יכול להיות יום, חודש, רבעון או שנה. פונקציות אלה מקלות עליך להזיז את מרווח הזמן עבור חישוב לפי אחת מהאפשרויות הבאות:
- חזור שנתיים אחורה
- חזרה חודש אחורה
- מעבר שלושה רבעונים קדימה
- חזרה 14 ימים אחורה
- מעבר 28 יום קדימה
בכל אחד מהמקרים, עליך רק לציין איזה מרווח זמן, וכמה מרווחי זמן יש להזיז. מרווח חיובי ינוע קדימה בזמן, ומרווח שלילי יזוז אחורה בזמן. המרווח עצמו מצוין על-ידי מילת מפתח של DAY, MONTH, QUARTER, או YEAR. מילות מפתח אלה אינן מחרוזות, ולכן הן לא צריכות להופיע במרכאות.
פונקציות שמעריכות ביטויים לאורך פרק זמן
קטגוריה זו של פונקציות מעריכה ביטוי לאורך פרק זמן שצוין. תוכל לבצע את אותה הפעולה באמצעות פונקציה CALCULATE ופונקציות אחרות של בינת זמן. לדוגמה,
= TOTALMTD (expression, Date_Column [, SetFilter])
זהה בדיוק ל:
= CALCULATE (Expression, DATESMTD (Date_Column)[, SetFilter])
עם זאת, קל יותר להשתמש בפונקציות אלה של בינת זמן כאשר הן מתאימות היטב לבעיה שיש לפתור:
- TOTALMTD (expression, Date_Column [, SetFilter])
- TOTALQTD (expression, Date_Column [, SetFilter])
- TOTALYTD (expression, Date_Column [, SetFilter] [,YE_Date]) *
בקטגוריה זו יש גם קבוצה של פונקציות המחשבות יתרות פתיחה וסגירה. ישנם מושגים מסוימים שעליך להבין עם הפונקציות הספציפיות הללו. ראשית, כפי שניתן לחשוב כמובן, יתרת הפתיחה לכל תקופה זהה ליתרת הסגירה של התקופה הקודמת. יתרת הסגירה כוללת את כל הנתונים עד סוף התקופה, ואילו יתרת הפתיחה אינה כוללת נתונים מתוך התקופה הנוכחית.
פונקציות אלה תמיד מחזירות את הערך של ביטוי המוערך עבור נקודת זמן ספציפית. נקודת הזמן החשובה לנו היא תמיד ערך התאריך האחרון האפשרי בתקופה בלוח שנה. יתרת הפתיחה מבוססת על התאריך האחרון של התקופה הקודמת, ואילו יתרת הסגירה מבוססת על התאריך האחרון בתקופה הנוכחית. התקופה הנוכחית נקבעת תמיד לפי התאריך האחרון בהקשר של התאריך הנוכחי.
- OPENINGBALANCEMONTH (ביטוי, Date_Column [,SetFilter])
- OPENINGBALANCEQUARTER Quarter (expression, Date_Column [,SetFilter])
- 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