ד"ר אברהם מידן, מנכ"ל חשבשבת

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

  • איזו כמות כדאי להזמין?
  • מאיזה ספק?
  • מתי?

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

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

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

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

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

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

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

 נתונים לחישוב האופטימיזציה

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

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

 צריכה יומית / חודשית: הכמות שיוצאת מהמלאי במשך יום / חודש.

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

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

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

 יתרה: יתרה נוכחית במלאי.

 יתרת הזמנות: יתרת הזמנות פתוחות (הזמנות מלקוחות והזמנות מספקים).

 הנתונים הרלוונטיים לגבי כל אחד מהספקים הם:

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

 תדירות הביקור: ישנם ספקים שמביאים את הפריטים לעסק (כלומר, הם מבצעים את ההובלה). בסעיף זה רושמים כל כמה ימים הספק שולח סחורה. אם הספק אינו שולח סחורה (אלא העסק נוסע להביא את הפריטים) יש לרשום בסעיף זה את המספר 0.

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

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

 לגבי כל פריט וכל ספק  יש להתחשב בנתונים הבאים:

 כמות מינימאלית להזמנה: מגבלה של הספק לגבי הכמות המינימאלית שהוא מוכן לספק (לגבי כל פריט).

 מחיר: מחיר ליחידה כפונקציה של כמות (לדוגמה: מ- 1 ועד 100 המחיר הוא 30, מעל 100 המחיר הוא 28). לעתים כדאי לרכוש כמות גדולה יותר על מנת לחסוך במחיר ליחידה.

לבסוף, יש להתחשב גם בנתונים הבאים:

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

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

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