תחזית ביקוש
הטבח עונה בכל בוקר על אותה שאלה: כמה ממה להכין מראש. אחראי הרכש עונה על השאלה הסמוכה: כמה ממה להזמין. בדרך כלל שניהם עונים מהזיכרון.
פתחו את פאנל הניהול → מחסן → לשונית „תחזית” (admin.cenaly.com/inventory). הלשונית לוקחת את היסטוריית המכירות והופכת אותה לשלושה פריטים מוחשיים. הסדר על המסך הוא לפי דחיפות: למעלה מה שעלול להיגמר לפני סוף היום, מתחתיו תוכנית ההכנה מראש, ומתחתיה טיוטת הזמנה לספק. אם אין פריטים בסיכון, הבלוק העליון לא יופיע כלל. בתחתית, כעזרה מכווצת, נמצאת הטבלה „תחזית לפי מנות” — אין חובה להסתכל עליה עד שרוצים לאמת מספר.
כיצד מחושבת התחזית#
בדיוק שני מדדים סטטיסטיים, ושניהם ניתנים להסבר לטבח בקול רם:
- כמה מהמנה הזו נמכר בדרך כלל ביום הזה בשבוע. חלון ההיסטוריה — 8 שבועות (56 ימים). אומדן הנקודה הוא חציון, לא ממוצע: שמונה ימי שלישי, שאחד מהם היה יום הולדת ל-40 איש, יגרמו לממוצע לומר „הכינו ל-40” בכל שבוע, ואילו החציון מתעלם מאותו יום שלישי. בטבלת העזר „תחזית לפי מנות” מוצגים לצד המספר פיזור התצפיות האמיתי (מינימום–מקסימום), כמה תצפיות יש במדגם והשיא — חלק היום עם השיעור הגבוה ביותר של מכירות. בכותרת הלשונית כתוב בסיס החישוב: „חציון של אותו יום בשבוע במשך 56 ימים · N ימי פעילות בהיסטוריה”.
- כיצד הביקוש הזה מתפלג בתוך היום — חלקים לפי חלקי היום: בוקר (6–11), צהריים (11–16), ערב (16–23), לילה (23–6). הגבולות זהים לכל העסקים, והפרופיל עצמו מחושב לפי כל ימי ההיסטוריה יחד, לא בנפרד לפי ימי שלישי.
מה נחשב תצפית — גם זה הוחלט במודע: הזמנות מבוטלות אינן נכנסות להיסטוריה; היום הנוכחי שטרם נסגר אינו נכלל במדגם; ימים לפני המכירה הראשונה של המנה אינם נספרים כאפסים (מנה חדשה אינה מקבלת „אפס מכירות” עבור השבועות שבהם עוד לא הייתה בתפריט); „יום בלי מכירות” שונה מ„יום שבו העסק היה סגור”. היממה נספרת לפי אזור הזמן של הסניף. בחישוב נלקחים 500 הפריטים המובילים של הסניף לפי מחזור — הזנב הארוך של התפריט נחתך.
פחות משלוש תצפיות של אותו יום בשבוע — לא יהיה מספר. בטבלה יופיע מקף במקום הספרה, ובעמודת התצפיות — הסימון „מעט”. מנה כזו לא תיכנס כלל לתוכנית ההכנה מראש ול�רכש. תחזית שאי אפשר להאמין לה גרועה מהיעדרה: לפיה מכינים מראש ורוכשים.
המתג למעלה בוחר לאיזה יום לבנות את התחזית — היום או מחר.
תוכנית ההכנה מראש#
התחזית לפי מנות נפרסת לפי כרטיסים טכניים לצורך במוצרים ובמוצרים מוגמרים למחצה. הפריסה מתבצעת לפי הכרטיסים הטכניים הנוכחיים, ברגע פתיחת הלשונית — אם השף שינה את המתכון בבוקר, התוכנית תתחשב בכך (עריכה שנעשתה בחלון סמוך תיקלט ברענון הדף).
מוצרים מוגמרים למחצה מקוננים נפרסים לעומק: אם הרוטב מבושל מציר, והציר הוא גם מוצר מוגמר למחצה, שניהם ייכנסו לתוכנית — אחרת היו אומרים לטבח לבשל את הרוטב בלי לומר שאין לו ציר בשבילו. עומק הקינון מוגבל לחמישה רמות (ומוגן מפני מתכונים שמפנים זה לזה במעגל): כל מה שעמוק יותר נחשב חומר גלם ועובר לרכש, ולא לתוכנית ההכנה מראש.
טבלת התוכנית:
| עמודה | מה היא מציינת |
|---|---|
| שם המוצר | מוצר מוגמר למחצה שצריך להפיק |
| יתרה | כמה כבר יש |
| דרוש | צורך ברוטו לפי התחזית ליום |
| להפיק | החוסר — כמה בפועל לבשל/לחתוך |
| עד | השעה שבה היתרה מפסיקה להספיק |
המועד אינו „תחילת המשמרת”. אם הרוטב מספיק לבוקר אך לא לצהריים, על הטבח להספיק עד 11:00, ולא עד 6:00. השעה מעוגלת לגבול הקרוב של חלק היום (6:00, 11:00, 16:00, 23:00), ולמוצרים מוגמרים למחצה מקוננים אין מועד כלל — שם מופיע מקף: הם מבושלים „לפני” מה שעושים מהם. השורות ממוינות לפי המועד: מועד מוקדם יותר — גבוה יותר ברשימה. אם אין מה להכין מראש, הלשונית אומרת זאת במפורש: היתרות מספיקות לתחזית.
יתרת מוצר מוגמר למחצה מנוצלת פעם אחת: אם אותו ציר נכנס גם לרוטב וגם למרק, חישוב נאיבי היה מחיל את היתרה פעמיים והרכש היה מחסיר חומר גלם.
הכפתור „ללוח המשמרת” הופך את התוכנית לרשימת משימות — ראו לוח משימות המשמרת. נוצרת משימה כללית אחת „תוכנית הכנה מראש — <תאריך>”, וכל הכנה מראש הופכת לתת-משימה שלה עם הכמות והשעה ישירות בכותרת („רוטב דמיגלס — 16 יח׳ עד 11:00”); אפשר לסגור את המשימה הכללית רק כשכל תת-המשימות סגורות. לחיצה חוזרת אינה יוצרת כפילויות: אם התוכנית לתאריך הזה כבר נמצאת על הלוח, הכפתור יאמר זאת במפורש.
מנות בלי כרטיס טכני אינן נכנסות לתוכנית ומפורטות באזהרה נפרדת (עד 20 שמות): עליהן התחזית לא יכולה לומר דבר, ומוטב לומר זאת בקול רם מאשר להעמיד פנים שההזמנה מלאה.
טיוטת הזמנה לספק#
מתחת לתוכנית נמצאת טיוטת הרכש לטווח הכיסוי הנבחר (השדה „כיסוי, ימים“: בדרך כלל זמן האספקה בתוספת מלאי ביטחון; ברירת המחדל היא 3 ימים, ומותר בין 1 ל-30).
עבור כל פריט מחושבים שני ערכים, ונלקח הגדול מביניהם:
- הצורך לפי התחזית לטווח פחות היתרה הנוכחית;
- השלמה עד ליתרת היעד (ואם היא לא הוגדרה לפריט — עד לנקודת ההזמנה) — היגיון מלאי רגיל.
למה הגדול ולא אחד במקום השני: מלאי הביטחון לא יודע על יום שישי מחר עם תפוסה כפולה; והתחזית לא יודעת על פריטים שאינם משתתפים כלל במפות טכניות (אריזה, מתכלים) — עבורם תקני המלאי הם נקודת הציון היחידה. שורות שנכנסו לרשימה לפי הכלל השני מסומנות „לפי נקודת הזמנה“. שימו לב: הכלל מסתכל על יתרת היעד, ולכן בטיוטה ייכלל גם פריט שעדיין גבוה מנקודת ההזמנה אך נמוך מיתרת היעד — הלשונית „צריך להזמין“ עדיין לא מציגה פריט כזה.
לפי התחזית נרכשים רק מרכיבי קצה: מוצרים מוגמרים למחצה לא נכנסים להזמנה לספק לפי התחזית (אותם מייצרים לפי תוכנית ההכנות) — הם יכולים להיכנס לטיוטה רק לפי תקן מלאי.
הכמות מעוגלת כלפי מעלה לכפולת האריזה, אם היא הוגדרה לפריט. השורות מקובצות לפי ספקים (פריטים בלי ספק מוקצה — בקבוצה נפרדת), והכפתור יוצר הזמנה נפרדת לכל ספק — בהמשך אלה רכש רגיל מהמדור מלאי.
„ייגמר עד 19:00“#
הבלוק העליון ביותר בלשונית — סיכון להתרסקות עד סוף היום: מה שבוער ממש עכשיו. הוא משווה את היתרה הנוכחית לצריכה הצפויה בשעות שנותרו, המחושבת לפי פרופיל חלקי היום, ומציין את השעה שבה היתרה תתאפס. אם לא ניתן לקבוע את השעה, השורה אומרת בכנות „לא יספיק עד סוף היום“, בלי זמן מומצא.
הבלוק מחושב רק עבור היום: במעבר ל„מחר“ הוא נעלם — אין סיכון „ייגמר עד 19:00“ ליום מחר.
תיקון לפי הקצב של היום: אם עד הצהריים כבר נצרכה כמות גדולה מהרגיל, הציפייה להמשך היום עולה באופן פרופורציונלי, ובשורה מופיעה הערה כמו „קצב היום ×1.4“. הקצב מחושב לפי מכירות בפועל (מחיקות, קלקול והאכלת עובדים לא נכללים בו) ונמדד עבור עשרת השורות המסוכנות ביותר בקירוב — השאר מחושבות לפי הפרופיל הרגיל. המקדם מוגבל לטווח ×0.5…×2 — תיקון ל„היום הומה“ נחוץ, אבל חיזוי לפי קבלה אחת לא. אם אין ממה למדוד את הקצב כלל, הלשונית תאמר בכנות שנלקח הפרופיל הרגיל של יום השבוע.
מה צריך כדי שהתחזית תופיע#
| צריך | לשם מה | בלעדיו |
|---|---|---|
מותג על תשתית AWS (cenaly.com, cenaly.com…) |
את היסטוריית המכירות מחשבת בסיס נתונים אנליטי בשרת, והוא פעיל רק שם | ב-cenaly.ru הלשונית תמיד כותבת „עדיין מעט היסטוריית הזמנות“ — ההודעה עוסקת בהיסטוריה, אבל הסיבה אחרת: אין שם במה לחשב אותה |
| היסטוריית מכירות | לחשב חציון לפי יום בשבוע | „עדיין מעט היסטוריית הזמנות כדי לחזות ביקוש“ |
| ≥ 3 ימים זהים בשבוע בהיסטוריה | לחשב כמדגם | המנה בטבלה מסומנת „מעט“ ולא נכנסת לתוכניות |
| מפות טכניות של מנות | לפרוס את התחזית לפריטים | המנה תיכנס לאזהרה „בלי מפה טכנית“ |
| יתרות מעודכנות | לחשב את החוסר והסיכון | הלשונית לא תציג דבר עד שהיתרות ייטענו |
מצרף ההיסטוריה מחושב מחדש בשרת בערך כל חצי שעה (ורק עבור חשבונות שעובדים כעת); פריסת המפות הטכניות וניכוי היתרות מחושבים ברגע פתיחת הלשונית, לפי הנתונים הנוכחיים.
מדורים קשורים#
- מלאי — מפות טכניות, יתרות, קבלת סחורה ורכש
- לוח משימות המשמרת — לאן עוברת תוכנית ההכנות
- הנדסת תפריט — מה לעשות עם מנה כשנראים גם הביקוש וגם הרווחיות
- אנליטיקה — מכירות לפי מנות ותקופות
שאלות נפוצות#
למה אצל מחצית המנות מופיעה ההערה „מעט“?#
כי עבור המנות האלה בהיסטוריה יש פחות משלוש מכירות ביום הזה בשבוע — למשל, המנה נכנסה לתפריט לפני שבועיים. המספר יופיע מעצמו כשהתצפיות יספיקו; עד אז המנה לא משתתפת לא בתוכנית ההכנות ולא ברכש.
למה משתמשים בחציון ולא בממוצע?#
החציון עמיד בפני חריגים. אירוע אחד ל-40 איש מזיז את הממוצע כך שהמקום מכין עודף במשך שבועות. הממוצע לא מוצג בממשק כלל — רק החציון, הפיזור ומספר התצפיות.
התחזית מתחשבת במזג האוויר, בחגים, בכדורגל?#
לא. היא יודעת רק את יום השבוע ואת השעה ביום. שבוע חג ומשחק בשכונה עדיין נשמרים בראש של המנהל — וזה כן יותר מאשר מודל שמעמיד פנים שהתחשב בהם.
אפשר לבנות תחזית לשבוע קדימה?#
הלשונית מציגה היום ומחר. לרכש הטווח מוגדר בנפרד — בשדה „כיסוי, ימים“: תחזית של יום אחד מוכפלת בו.
טיוטת הרכש שולחת מיד הזמנה לספק?#
לא. זו בדיוק טיוטה: שורות מיותרות מסירים בסימון, ורק אחר כך לוחצים על יצירה — מתקבלות טיוטות רכש רגילות של המדור „מלאי“, אחת לכל ספק. הכמויות נערכות כבר בהזמנה שנוצרה, שם בדיוק כמו תמיד.