הקשר בנוסחאות DAX

הערה: אנו מעוניינים לספק לך את תוכן העזרה העדכני ביותר במהירות האפשרית, בשפה שלך. דף זה תורגם באמצעות אוטומציה והוא עשוי לכלול שגיאות דקדוק או אי-דיוקים. מטרתנו היא כי תוכן זה יהיה שימושי עבורך. האם תוכל לספר לנו אם המידע הועיל לך, בחלק התחתון של דף זה? לנוחותך, הנה המאמר באנגלית.

הקשר מאפשר לך לבצע ניתוח דינמי, שבו התוצאות של נוסחה יכולות להשתנות כדי לשקף את בחירת השורה או התאים הנוכחית וגם את כל הנתונים הקשורים. הבנת ההקשר ושימוש יעילים בהקשר מאוד חשובים לבניית נוסחאות ביצועים גבוהים, ניתוחים דינאמיים ולפתרון בעיות בנוסחאות.

סעיף זה מגדיר את סוגי ההקשר השונים: הקשר שורה, הקשר שאילתה והקשר מסנן. היא מסבירה כיצד ההקשר מוערך עבור נוסחאות בעמודות מחושבות ובטבלאות pivottable.

החלק האחרון של מאמר זה מספק קישורים לדוגמאות מפורטות הממחישות כיצד התוצאות של נוסחאות משתנות בהתאם להקשר.

הכרת הקשר

נוסחאות ב- Power Pivot עשויות להיות מושפעות מהמסננים המוחלים ב-PivotTable, לפי קשרי גומלין בין טבלאות ומסננים הנמצאים בשימוש בנוסחאות. ההקשר הוא מה שמאפשר לבצע ניתוח דינאמי. הכרת הקשר חשוב לבנייה ולפתרון בעיות של נוסחאות.

קיימים סוגים שונים של הקשר: הקשר שורה, הקשר שאילתה והקשר מסנן.

ניתן לחשב הקשר שורה כשורה הנוכחית. אם יצרת עמודה מחושבת, הקשר השורה מורכב מהערכים בכל שורה וערכים בודדים בעמודות הקשורות לשורה הנוכחית. יש גם כמה פונקציות (מוקדם יותר והמוקדם ביותר של ) אשר מקבלים ערך מהשורה הנוכחית ולאחר מכן משתמשים בערך זה בעת ביצוע פעולה מעל טבלה שלמה.

הקשר שאילתה מתייחס לקבוצת המשנה של הנתונים שנוצרת באופן מרומז עבור כל תא ב-PivotTable, בהתאם לכותרות השורות והעמודות.

הקשר מסנן הוא קבוצת הערכים המותרים בכל עמודה, בהתבסס על אילוצי מסנן שהוחלו על השורה או המוגדרים על-ידי מסנן ביטויים בתוך הנוסחה.

לראש הדף

הקשר שורה

אם אתה יוצר נוסחה בעמודה מחושבת, הקשר השורה עבור נוסחה זו כולל את הערכים מכל העמודות בשורה הנוכחית. אם הטבלה קשורה לטבלה אחרת, התוכן כולל גם את כל הערכים מהטבלה האחרת הקשורה לשורה הנוכחית.

לדוגמה, נניח שאתה יוצר עמודה מחושבת, = [Freight] + [מס],

, פעולה זו מוסיפה שתי עמודות מאותה טבלה. נוסחה זו מתנהגת כמו נוסחאות בטבלת Excel, המפנות באופן אוטומטי לערכים מאותה שורה. שים לב שטבלאות שונות מטווחים: אין באפשרותך להפנות לערך מהשורה לפני השורה הנוכחית באמצעות סימון טווח, ואין באפשרותך להפנות לערך בודד שרירותי בטבלה או בתא. עליך לעבוד תמיד עם טבלאות ועמודות.

הקשר שורה עוקב אוטומטית אחר קשרי הגומלין בין טבלאות כדי לקבוע אילו שורות בטבלאות קשורות משויכות לשורה הנוכחית.

לדוגמה, הנוסחה הבאה משתמשת בפונקציה הקשורה כדי להביא ערך מס מטבלה קשורה, בהתבסס על האזור שההזמנה נשלחה אליה. ערך המס נקבע על-ידי שימוש בערך עבור אזור בטבלה הנוכחית, בחיפוש האזור בטבלה הקשורה ולאחר מכן קבלת שיעור המס של אזור זה מהטבלה הקשורה.

= [Freight] + קשור (' אזור ' [TaxRate])

נוסחה זו פשוט מקבלת את שיעור המס עבור האזור הנוכחי, מהטבלה region. אין צורך לדעת או לציין את המפתח המחבר בין הטבלאות.

הקשר שורה מרובים

בנוסף, DAX כולל פונקציות שחזר חישובים בטבלה. פונקציות אלה יכולות לכלול שורות נוכחיות מרובות והקשרי שורה נוכחיים. במונחי תיכנות, באפשרותך ליצור נוסחאות המקללות בלולאה פנימית וחיצונית.

לדוגמה, נניח שחוברת העבודה שלך מכילה טבלת מוצרים וטבלת מכירות. ייתכן שתרצה לעבור על טבלת המכירות כולה, שמלאה בטרנזקציות הכוללות מוצרים מרובים, ולמצוא את הכמות הגדולה ביותר שהוזמנה עבור כל מוצר בכל טרנזקציה אחת.

ב-Excel, חישוב זה מחייב שימוש בסידרה של סיכומי ביניים, שיש לבנות מחדש אם הנתונים השתנו. אם אתה משתמש power של Excel, ייתכן שתוכל לבנות נוסחאות מערך שיבצעו את המשימה. לחלופין, במסד נתונים יחסי ניתן לכתוב subselects מקונן.

עם זאת, עם DAX באפשרותך לבנות נוסחה בודדת שמחזירה את הערך הנכון, והתוצאות מתעדכנות באופן אוטומטי בכל פעם שאתה מוסיף נתונים לטבלאות.

= MAXX (FILTER (Sales, [ProdKey] = מוקדם יותר ([ProdKey])), Sales [OrderQty])

לקבלת הדרכה מפורטת של נוסחה זו, עיין במאמר הקודם.

בקצרה, הפונקציה הקודמת מאחסנת את הקשר השורה מהפעולה שקדמה לפעולה הנוכחית. בכל עת, הפונקציה מאחסנת בזיכרון שתי קבוצות של הקשר: ערכת הקשר אחת מייצגת את השורה הנוכחית עבור הלולאה הפנימית של הנוסחה, וקבוצה אחרת של הקשר מייצגת את השורה הנוכחית עבור הלולאה החיצונית של הנוסחה. DAX מזינה באופן אוטומטי ערכים בין שתי הלולאות כדי שתוכל ליצור צבירות מורכבות.

לראש הדף

הקשר שאילתה

הקשר שאילתה מתייחס לקבוצת המשנה של הנתונים שאוחזרו באופן מרומז עבור נוסחה. בעת שחרור מידה או שדה ערך אחר בתוך תא ב-PivotTable, מנגנון Power Pivot בוחן את כותרות השורות והעמודות, כלי פריסה ומסנני דוחות כדי לקבוע את ההקשר. לאחר מכן, Power Pivot מבצע את החישובים הדרושים כדי לאכלס כל תא ב-PivotTable. קבוצת הנתונים המאוחזרת היא ההקשר של השאילתה עבור כל תא.

מאחר שההקשר יכול להשתנות בהתאם למיקום שבו אתה ממקם את הנוסחה, תוצאות הנוסחה משתנות גם בהתאם לשאלה אם אתה משתמש בנוסחה ב-PivotTable עם קיבוצים ומסננים רבים, או בעמודה מחושבת ללא מסננים והקשר מינימלי.

לדוגמה, נניח שאתה יוצר נוסחה פשוטה זו המסכמת את הערכים בעמודה רווח של טבלת המכירות: = SUM (' Sales "[רווח]).

אם אתה משתמש בנוסחה זו בעמודה מחושבת בתוך הטבלה Sales , התוצאות עבור הנוסחה יהיו זהות עבור הטבלה כולה, מאחר שהקשר השאילתה עבור הנוסחה הוא תמיד ערכת הנתונים כולה של טבלת המכירות. התוצאות שלך יהיו בעלי רווח עבור כל האזורים, כל המוצרים, כל השנים וכדומה.

עם זאת, בדרך כלל אינך מעוניין לראות את אותה תוצאה מאות פעמים, אך במקום זאת ברצונך לקבל את הרווח עבור שנה מסוימת, מדינה או אזור מסוימים, מוצר מסוים או שילוב מסוים של אלה, ולאחר מכן לקבל סכום כולל גדול.

ב-PivotTable, קל לשנות הקשר על-ידי הוספה או הסרה של כותרות עמודה ושורה והוספה או הסרה של כלי פריסה. באפשרותך ליצור נוסחה כגון זו שלעיל, במידה ולאחר מכן להוריד אותה ב-PivotTable. בכל פעם שאתה מוסיף כותרות עמודה או שורה ל-PivotTable, אתה משנה את ההקשר של השאילתה שבו המידה מוערכת. פעולות פריסה וסינון משפיעות גם על הקשר. לכן, אותה נוסחה, הנמצאת בשימוש ב-PivotTable, מוערכת בהקשר אחר של שאילתה עבור כל תא.

לראש הדף

הקשר מסנן

הקשר מסנן נוסף בעת ציון אילוצים של מסננים בקבוצת הערכים המותרים בעמודה או בטבלה, על-ידי שימוש בארגומנטים לנוסחה. הקשר מסנן חל על גבי הקשרים אחרים, כגון הקשר שורה או הקשר שאילתה.

לדוגמה, PivotTable מחשב את הערכים של כל תא בהתבסס על כותרות השורות והעמודות, כפי שמתואר בסעיף הקודם בהקשר שאילתה. עם זאת, בתוך המידות או העמודות המחושבות שאתה מוסיף ל-PivotTable, באפשרותך לציין ביטויי מסנן כדי לשלוט בערכים הנמצאים בשימוש על-ידי הנוסחה. באפשרותך גם לנקות באופן סלקטיבי את המסננים בעמודות מסוימות.

לקבלת מידע נוסף אודות יצירת מסננים בתוך נוסחאות, עיין בפונקציות Filter.

לקבלת דוגמה של האופן שבו ניתן לנקות מסננים כדי ליצור סכומים כוללים, עיין ב- ALL.

לקבלת דוגמאות לניקוי ולהחלה סלקטיבית של מסננים בתוך נוסחאות, ראה הפונקציה ALLEXCEPT.

לכן, עליך לסקור את ההגדרה של מדדים או נוסחאות הנמצאות בשימוש ב-PivotTable, כך שאתה מודע להקשר המסנן בעת פירוש התוצאות של נוסחאות.

לראש הדף

קביעת הקשר בנוסחאות

בעת יצירת נוסחה, Power Pivot עבור Excel מבצע את הבדיקות הראשונות של תחביר כללי ולאחר מכן בודק את שמות העמודות והטבלאות שאתה מספק כנגד עמודות וטבלאות אפשריות בהקשר הנוכחי. אם ל- Power Pivot אין אפשרות למצוא את העמודות והטבלאות שצוינו על-ידי הנוסחה, תקבל שגיאה.

ההקשר נקבע כמתואר בסעיפים הקודמים, באמצעות הטבלאות הזמינות בחוברת העבודה, כל קשרי הגומלין בין הטבלאות והמסננים שהוחלו.

לדוגמה, אם ייבאת רק נתונים מסוימים לטבלה חדשה ולא החלת מסננים כלשהם, כל העמודות בטבלה היא חלק מההקשר הנוכחי. אם יש לך טבלאות מרובות המקושרות באמצעות קשרי גומלין ואתה עובד ב-PivotTable שסונן על-ידי הוספת כותרות עמודות ושימוש בכלי פריסה, ההקשר כולל את הטבלאות הקשורות ואת כל המסננים בנתונים.

הקשר הוא מושג רב-עוצמה שיכול גם להקשות על פתרון בעיות נוסחאות. מומלץ להתחיל בנוסחאות ובקשרי גומלין פשוטים כדי לראות כיצד ההקשר פועל ולאחר מכן להתחיל להתנסות בנוסחאות פשוטות בטבלאות pivottable. הסעיף הבא מספק גם כמה דוגמאות לאופן שבו נוסחאות משתמשות בסוגי הקשר שונים כדי להחזיר תוצאות באופן דינאמי.

דוגמאות להקשר בנוסחאות

  • הפונקציה הקשורה מרחיבה את ההקשר של השורה הנוכחית כדי לכלול ערכים בעמודה קשורה. פעולה זו מאפשרת לך לבצע בדיקות מידע. הדוגמה בנושא זה מדגימה את האינטראקציה של סינון והקשר שורה.

  • הפונקציה FILTER מאפשרת לך לציין את השורות שיש לכלול בהקשר הנוכחי. הדוגמאות בנושא זה ממחישות גם כיצד להטביע מסננים בתוך פונקציות אחרות שמבצעות צבירות.

  • הפונקציה ALL מגדירה הקשר בתוך נוסחה. באפשרותך להשתמש בו כדי לעקוף מסננים שהוחלו כתוצאה של הקשר שאילתה.

  • הפונקציה ALLEXCEPT מאפשרת לך להסיר את כל המסננים פרט לאחד שאתה מציין. שני הנושאים כוללים דוגמאות שמלוות אותך בבניית נוסחאות והבנת הקשרים מורכבים.

  • הפונקציות הקודמות והמוקדמות ביותר מאפשרות לך לבצע מעקב אחר טבלאות על-ידי ביצוע חישובים, תוך הפניה לערך מלולאה פנימית. אם אתה מכיר את הרעיון של רקורסיה ועם לולאות פנימיים וחיצוניים, תוכל להעריך את העוצמה שהפונקציות הקודמות והמוקדמות מספקות. אם אתה משתמש חדש במושגים אלה, עליך לבצע את השלבים המפורטים בדוגמה כדי לראות כיצד משמשים ההקשרים הפנימיים והחיצוניים בחישובים.

לראש הדף

שלמות הקשרים

סעיף זה דן בכמה מושגים מתקדמים הקשורים לערכים חסרים בטבלאות Power Pivot המחוברים באמצעות קשרי גומלין. מקטע זה עשוי להועיל לך אם יש לך חוברות עבודה עם טבלאות מרובות ונוסחאות מורכבות וברצונך לקבל עזרה בהבנת התוצאות.

אם אתה מקבל מושגי נתונים יחסיים, מומלץ לקרוא תחילה את נושא המבוא, מבט כולל על קשרי גומלין.

קשרי גומלין של שלמות הקשרים וPower Pivot

Power Pivot אינו מחייב לאכוף שלמות הקשרים בין שתי טבלאות כדי להגדיר קשר גומלין חוקי. במקום זאת, שורה ריקה נוצרת בקצה "one" של כל קשרי גומלין של יחיד לרבים ומשמשת לטיפול בכל השורות שאינן תואמות מהטבלה הקשורה. היא פועלת באופן יעיל כצירוף חיצוני של SQL.

בטבלאות pivottable, אם אתה מקבץ נתונים לפי הצד האחד של קשר הגומלין, כל הנתונים שאינם תואמים בצד הרבים של קשר הגומלין מקובצים יחד וייכלל בסכומים עם כותרת שורה ריקה. הכותרת הריקה שווה ערך לחבר "לא ידוע".

הכרת החבר הלא ידוע

הרעיון של החבר הלא ידוע כנראה מוכר לך אם עבדת עם מערכות מסד נתונים רב-ממדיים, כגון SQL Server Analysis Services. אם המונח חדש עבורך, הדוגמה הבאה מסבירה מה החבר הלא ידוע הוא וכיצד הוא משפיע על חישובים.

נניח שאתה יוצר חישוב שמסכם מכירות חודשיות עבור כל חנות, אך עמודה בטבלת המכירות חסרה ערך עבור שם החנות. בהתחשב בכך שהטבלאות עבור החנות והמכירות מחוברות לפי שם החנות, מה היית מצפה שיקרה בנוסחה? כיצד יש לקבוצת PivotTable או להציג את נתוני המכירות שאינם קשורים לחנות קיימת?

בעיה זו היא משותפת במחסני הנתונים, כאשר טבלאות גדולות של נתוני עובדות חייבות להיות קשורות באופן לוגי לטבלאות ממדים המכילות מידע אודות חנויות, אזורים ותכונות אחרות המשמשות לסיווג ולחישוב של עובדות. כדי לפתור את הבעיה, כל העובדות החדשות שאינן קשורות לישות קיימת מוקצות באופן זמני לחבר הלא ידוע. זו הסיבה לכך שעובדות לא קשורות יופיעו מקובצות ב-PivotTable תחת כותרת ריקה.

טיפול בערכים ריקים לעומת השורה הריקה

ערכים ריקים שונים מהשורות הריקות שנוספו כדי להתאים לחבר הלא ידוע. הערך הריק הוא ערך מיוחד שנעשה בו שימוש כדי לייצג ערכי null, מחרוזות ריקות וערכים חסרים אחרים. לקבלת מידע נוסף אודות הערך הריק, כמו גם סוגי נתונים אחרים של DAX, ראה סוגי נתונים במודלים של נתונים.

לראש הדף

שפר את הכישורים שלך ב- Office
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×