
order או return. בלעדיו אי אפשר להבחין בין הזמנה להחזרה.rename field.הטקסט המלא של הדקות הראשונות בהרצאה «Qlik Join - חלק 7» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אז בשיעור הקודם איחדנו בין אורדר לאורדר אייטמס כדי ליצור טבלה אחת של פאקט ועכשיו נייצר באופן מלאכותי בסקריפט טבלה של החזרות returns ואנחנו נשרשר אותה לאורדרס כדי להפוך אותה לטבלת פאקט אחת מרכזית בואו נסתכל קצת על הנתונים של אורדרס שיהיו לנו קצת נתונים אמיתיים להסתכל עליהם נתונים שרלוונטיים גם להחזרות אז את האורדר
אדי אנחנו לא צריכים וקסטומר אדי כן צריך אנחנו רוצים גם את הדייט ואת הפרודקט איי די פואנטיטי נביא אותו אני חושב שבכל מקרה אנחנו צריכים ליצור את זה מחדש ונראה לי שזהו זאת אומרת אנחנו רוצים עכשיו לייצר כמה שורות שדומות לזה רק שיתייחסו להחזרות לקוח מסוים בתאריך מסוים מוצר מסוים מוחזר בכמות מסוימת אז בוא נגיד נעשה לקוח
מספר 1 2 ו3 סתם נמציא תאריכים באזור שנת 2013-2014, מוצרים ניקח גם כן, תכף נראה, בואו נרכיב את הטבלה הזאת, נעשה מקטע חדש, כרגע אני קורא לה returns, אבל אחרי זה אנחנו נשרשר אותה, בואו נעשה load*inline ואנחנו צריכים את השדות
האלו, customerid, orderdate, productid, bt, בואו נקווה שאני רושם את זה כמו שצריך, בסדר, ונתחיל להכניס נתונים, אז customerid אמרנו, בוא נעשה אחד, שתיים, שלוש.
אודר דייט, בוא נכניס, נשתמור על הפורמט הזה, נעשה הראשון לתשיעי אלפיים ושלוש עשרה. פרודקט איי-די בוא נעשה שבעים, כדומה לפה, ונגיד שהוחזר פריט אחד.
לקוח מספר שתיים החזיר נגיד בחמש עשרה לעשירי אלפיים ושלוש עשרה, הוא החזיר את מוצר מספר שישים לשני מוצרים. לקוח מספר שלוש הוא היה ברביעי לאחת עשרה אלפיים ושלוש עשרה, הוא החזיר לאחת אלפיים ושלוש עשרה, הוא החזיר פריט תשע עשרה, הוא החזיר חמישה.
אוקיי, בוא נריץ. וכמובן שנוצר לנו מפתח סינתטי, כי בעצם הסדות האלו הם זהים לחלוטין לחלק מהסדות בטבלת אורדרס, אתם יכולים לראות סין אחד, כל מיני קשרים מוזרים שלא ביקשנו, ולכן אנחנו מיד נעשה במקום הריטרס נעשה שירשור.
שוב, זה בפונקציה חדשה שעוד לא למדנו, נקראת concatenate. רגע. concatenate בעצם אומר לשרשר טבלה אחת לטבלה אחרת, לא לחבר כמו ב-join.
ב-join בעצם השדות החדשים, השדות של הטבלה החדשה נוספים משמאל או מימין, לא משנה, לטבלה הקיימת. פה לא נוספים שדות, יכולים להיווסף שדות, סליחה, אבל הרעיון הוא להוסיף רשומות.
הרי אנחנו, יש לנו את טבלת orders ואנחנו רוצים להוסיף מתחת לרשומות של orders את הרשומות של ההחזרות. אז אנחנו עושים פה concatenate, ישרשר את הנתונים האלו מתחת לטבלת orders.
גם פה צריך לרשום, כמו ב-join, לאיזה טבלה אני רוצה לשרשר, אני רוצה לטבלת orders החדשה שלי, ובואו נריץ.
ואתם רואים שבעצם עכשיו order, כביכול לא קרה כלום, אבל כן קרה מכיוון שטבלת orders בעצם הפכה להיות גם טבלת returns. רק יש לנו בעיה אחת, איך אנחנו נדע שמדובר בהחזרה?
הרי בעצם זה אותם שדות. איך לדעת שהרשומות שלנו שכנראה נמצאים איפשהו בתחתית או לא יודע איפשהו לפי המיון בעצם זה החזרה ולא רכישה ולא הזמנה.
אז בשביל זה אנחנו נעשה פשוט שדה ידני, נעשה אותו גם ב-orders וגם, סליחה, גם ברשומות של ה-orders וגם ברשומות של החזרות. ובכל מקום אנחנו נדע לפיו אם דובר ברשומת החזרה או ברשומת הזמנה.
בטבלת ה-orders המקורית בוא נלך אליה, אני פשוט מוסיף פה פסיק טקסט, אני קורא לו, לשדה יקראו fact type, אני רוצה גם את השם, טוב את השם לא נשלה עכשיו, fact type, ועכשיו פה עוד יש לי רק רשומות של order, אז פה אני אקרא לזה, הטקסט יכיל order, זאת אומרת כל הרשומות שמגיעות לי מטבלת, מהqvd של order, זה מה שבעצם קורה פה,
בעצם ה-fact type שלהם הוא order. עכשיו אני אעתיק את זה, ואני אלך, לא אעתיק, פשוט אכתוב את זה מחדש באינליין שלי, אני בעצם יוצר פה עוד שדה, בשם fact type, נחבר כמובן לשדה שעשיתי מקודם ופה יהיה כתוב לי return כי ברשומות האלו הן רשומות מסוג החזרה הן לא רשומות מסוג הזמנה אוקיי בוא נריץ
בעצם יצרתי ככה לעצמי את ההבחנה בין רשומות שהן הזמנה לרשומות שהן החזרה בוא נוסיף לפה את השדה החדש שלי fact table fact type סליחה והנה אתם רואים בוא נמעיין לפי זה הנה הארבע השלוש שורות של ה-return שעשיתי אוקיי ומתחת ההזמנה זה מאוד מאוד חשוב כי למשל, נניח שאני רוצה לחשב את הסכום של כמויות שקנו פחות ההחזרים.
אני חייב לדעת להבחין בין הרשומות. בואו נעשה